java基本类型

202 阅读2分钟

java是一门强类型语言,这意味着每个变量都声明了一种类型。java有8中基本类型,其中包括4种整型类型,2种浮点型类型,一种字符型类型和一种布尔类型。

整型

整型及存储整数的类型,Java种有四种整型基本类型,如下表:

类型字节数范围
byte1字节$-2^7$$2^7$-1 (-128127)
short2字节$-2^{15}$$2^{15}$-1 (-3276832767)
int4字节$-2^{31}$$2^{31}$-1(-21亿21亿)
long8字节$-2^{63}$~$2^{63}$-1

注意事项:

  1. 整型类型声明时,如果赋值的数字超过整型的范围,idea编译器会报错,如:
//大于127,编译报错
byte b = 256
  1. 赋值可以由低字节类型直接赋值到高字节类型,如:
//正确写法
byte b = 127;
int i = b;

当由高字节类型向低字节类型赋值时,编译器会报错,此时需要类型强转,如:

//强转后编译通过,但是由于值超过byte的范围,此时打印b,b的值为-67
int i= 189;
byte b = (byte) i;

3.声明long类型时,需要在数字后面标l或L,不加l默认为int类型,如:

long l = 213434342543656L;

//此时默认为int类型,编译报错,超出int类型取值范围
long l = 213434342543656;

浮点型

浮点型用于存储小数,java中有两种浮点型基本类型,如下:

类型长度符号位指数位尾数位
float32位1位8位23位
double64位1位11位52位
注意事项:
1.java中的小数默认为double类型,如果要使用float类型需要在小数后加f或F。
//编译错误
float f = 3.13;

//编译正确
float f = 3.13f;

2.浮点数存在误差,如计算2.0-1.1得到的结果将是0.8999999999999999,因为利用2进制无法表示出所有的分数。

字符型

char用于表示单个字符,长度为2个字符,赋值时使用'',如下:

char c = 'A';

注意事项: 1.char类型只能赋值单个字符,并用''引用,利用”“的为字符串

//编译报错
char c =  'aaa';

2.char类型可以直接转换为int类型,转换后的值为字符对应的ascii码

char c = 'a';
int i = c;  // i=97

布尔型

boolean 类型用于表示逻辑判断的结果,有true和false两个值,长度为一个字节

boolean b = true;

注意事项: 1.boolean 类型与整型无法转换

//错误
if(0){
    
}