类型-------------------字节数--------------------默认值 1、byte 1 0 2、short 2 0 3、int 4 0 4、long 8 0 5、float 4 0.0 6、double 8 0.0 7、char 2 '\u0000' 8、boolean 1 false 整型数据类型:1、2、3、4 浮点型数据类型:5、6 字符型数据类型:7 布尔型数据类型:8
byte < short<int<long<float<double
char <
1、规则
**Java优先级低的类型可以自动向优先级高的类型转换
char a = 'a'; int b = a; int x = 10; double y = x;
**Java优先级低的类型向优先级高的类型转换需要强制转换
long a = 10L; int b = (int)a; float x = 1.5f; short y = (short)x;
2、Java中变量初始化值
//给byte类型变量赋初值 byte a = 127; byte b = 128; //报错,超出byte值范围 //跟下面这种方式对比 int x = 127; byte y = x; //报错,此时x代表int型数据
3、byte、short、char在运算中的规则
若运算中包含几种类型,byte、short、char会自动向int转。
byte x = 14; short y = 28; char z = 'a'; int a = x+y+z; System.out.println(x+y+z); System.out.println(a);
1、byte类型
占用一个字节,数据范围:-128~127,也是整型数据类型。
2、short类型
占用两个字节,数据范围:-32768~32767,也是整型数据类型。
3、int类型
占用四个字节,数据范围:-2147483648~2147483647,也是整型数据类型。
4、long类型
占用八个字节,数据范围:2^64,20位数据,int*int。
5、float类型
占用四个字节,数据范围:没必要记,可以了解一下IEEE 754规则。
6、long类型
占用八个字节,数据范围:。。。
7、char类型
**ASCII编码字符
------总共包含128个字符:从0~127。所以用一个字节来表示就够了。
------65-90:(A-Z)、97-122:(a-z)、49-57:(1-9)
System.out.println("字符A的值:"+(int)'A'); System.out.println("字符a的值:"+(int)'a'); System.out.println("字符1的值:"+(int)'1');
**转义字符
------在Java语言中,一些字符都有特殊含义,如:\n(换行符)、\t(制表符)等。
------Java编译器解析字符串时,碰到“\”时,会进行转义字符解析,就是将其与后面的一个字符进行绑定解析,如果解析不成功,将会报错。
System.out.println("aaa\taaa\n"); System.out.println("aaa\taaa\naaa\"); //报错,最后一个\不能解析到转义字符 System.out.println("\"); //报错,\不能解析到转义字符 System.out.println("\\"); //正确,并且输出结果为:\ //说明: \ 还有一个作用就是如果想原原本本的输出这些特殊字符,就在前面多加一个\ System.out.println("\\taaa\\n") //输出结果为\taaa\n
8、boolean类型
这种数据类型就两个值:true和false。
用于条件判断。
boolean rain = true; if(rain){ System.out.println("需要带伞!"); } else System.out.println("不需要带伞!");
Java中引用数据类型其实就是类。
------已经定义好的类:String、Scanner、Class等
------自己定义的类。