声明:本文不是java入门的系统教程,只是博主在个人学习中的一点心得体会。(大神轻喷)
变量及数据类型
变量
java程序中,变量必须遵守:声明-->赋值-->使用的流程
声明
语法:
数据类型 变量名;
赋值
变量的第一次赋值称为变量的初始化,声明和初始化可以在同一条语句中完成
语法:
变量名 = values;
eg:
public class ChangeNum{
public static void main(String[] args){
//声明变量及初始化
int num1 = 3;
int num2 = 5;
int num3;
//交换变量值(二次赋值)
num3 = num1;
num1 = num2;
num2 = num3;
//输出结果(使用变量)
System.out.println(num1);
System.out.println(num2);
}
}
数据类型
基本类型
四类八种
整形
byte:一个字节,-128~127
short:2个字节,-215~215-1(-32768~32767)
int(常用):4个字节,(-231)~(331-1),约-21亿~21亿
常量3,5等属于int类型
long:8个字节
3L或3l:long类型字面值
浮点型
更在意精确度
float:单精度浮点型,4个字节,精确度6~7位
double(常用):双精度浮点型,8个字节,精确度15位;
3.0,3.1,double类型子面值 ;
2e3,double类型字面值.
字符型:
存储一个字符,实际存储的时字符码值
java中字符采用Unicode16编码
char:2个字节,存储一个字符的码值
char a = 'A';
java中:\表示转义,对于部分字符无法直接表示,可以通过转义字符来表达
'\n':换行;'\t':制表符;'\':
布尔类型
boolean:1个字节,值只有两种:true,false
类型转换
手动排序顺序:byte,short,char<int<long<float<double
自动类型转换
- 小的可直接赋给大的
- byte,short,char在参与运算时,自动转换成int运算
- int常量可以直接赋值给byte,short,char,只要不超过其范围
- 不同类型计算时,小的会自动转换成大的
强制类型转换
针对大的赋给小的
可能导致值失真
double d1 = 3.2;
int num = (int)d1