8大基本类型
Java基本类型使用频率很高,它们的创建不是通过new
关键字产生的。通常 new
出来的对象都是保存在堆内,用这种方式创建小而简单的变量是不划算的。所以对于这些基本类型的创建方法,Java采取和C/C++一样的策略:不使用 new
创建,使用一个变量直接存储value,并置于栈内存中,因此更加高效。
Java确定了每种基本类型的内存占用大小。
基本类型 | 大小 | 最小值 | 最大值 | 包装类型 |
---|---|---|---|---|
Boolean | true/false | - | - | Boolean |
char | 16 bits | Unicode 0 | Unicode 216 -1 | Character |
byte | 8 bits | -128 | +127 | Byte |
short | 16 bits | -215 | +215 -1 | Byte |
int | 32 bits | -231 | +231 -1 | Integer |
long | 64 bits | -263 | +263 -1 | Long |
float | 32 bits | IEEE754 | IEEE754 | Float |
double | 64 bits | IEEE754 | IEEE754 | Double |
- 所有数值类型都有正负符号。
- Boolean类型的大小没有明确的规定,通常取true/false。
如果需要在堆内存里表示基本数据类型的数据,可以通过基本类型对应的包装类型实现。
//方式一:
char c ="x";
Character ch = new Character(c);
//方式二
Character ch = new Character("x");
基本类型默认值
在类初始化时,基本类型将会被赋予一个初始值。
基本类型 | 初始值 |
---|---|
boolean | false |
char | u0000 (null) |
byte | (byte) 0 |
short | (short) 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
这些默认值仅在Java初始化类的时候才会被赋予,确保了基础类型的字段始终能被初始化。
初始默认值对于程序来说不一定是合法的,所以为了安全,最好显式地初始化变量。
编写不易,转载注明出处:https://www.cnblogs.com/lmh15054109/p/14188522.html