整数
- 类型:byte(1字节),short(2字节),int(4字节),long(8字节,long在定义时需要在后面加L)
- 定义方式:
int x1 = 1;
long x2 = 9223372036854775807L;
- 取值范围:
Java在存储整型变量时会将最高位的位(bit)表示符号位(0表示正数,1表示负数),剩下的位用于表示数值。
byte:-128 ~ 127,即 -
2
7
2^7
27 ~
2
7
2^7
27
short:-32768 ~ 32767,即 -
2
15
2^{15}
215 ~
2
15
2^{15}
215
int:-2147483648 ~ 2147483647,即 -
2
31
2^{31}
231 ~
2
31
2^{31}
231
long:-9223372036854775808 ~ 9223372036854775807,即 -
2
63
2^{63}
263 ~
2
63
2^{63}
263
浮点数
- 类型:float(4字节,float在定义时需要在后面加f),double(8字节)
- 定义方式:
float x1 = 3.14f;
double x1 = 3.14;
- 取值范围:
浮点数的取值范围根据浮点数的表示方法有关,Java的浮点数表示方法为 IEEE 754
布尔类型
- 类型:boolean(注意C++和Python的布尔类型是bool)
- 定义方式:
boolean x1 = true;
boolean x2 = false;
boolean x3 = 1 < 2;
- 取值范围:只有
true
或者 false
字符和字符串
- 类型:char(只能定义一个字符),String(能定义多个字符)
- 定义方式:
char s1 = '我';
String s2 = "我比较长";
- 注意与上面定义的变量不同,字符串属于引用类型变量。引用变量与C语言中的指针类似,其内部存储的是“地址”而不是定义的值本身,“地址”指向定义的值
数组
- 类型:整型数组,浮点型数组,布尔型数组,字符或字符串数组
- 定义方式:Java的数组可以通过两种方式定义
char[] length = new char[]{'我','就','这','么','长'};
String[] itsok = {"没关系","小小的","也很可爱"};
String[] length = new String[1];
- 注意:
编译期:将 .java 文件编译成 .class 文件(字节码)的过程
运行期:JVM分配内存,执行 .class 文件。