Java8大基本类型以及进制

Java8大基本类型

  1. byte : 大小:1字节(8位),区间范围:(-128~127)
  2. short 大小:2字节(16位) ,区间范围:(-32768~32767)
  3. char 大小:2字节(16位),如果采用"ISO-8859-1"编码,那么一个char只会有一个字节。如果采用"UTF-8"或者"GB2312"、"GBK"等编码格式呢?这几种编码格式采用的是动态长度的,如果是英文字符,大家都是一个字节。如果是中文,"UTF-8"是三个字节,而"GBK"和"GB2312"是两个字节
  4. int 大小:4字节(32位),区间范围(2147483648~2147483647)
  5. long 大小:8字节(64位),区间范围(-9223372036854774808~9223372036854774807)
  6. float 大小:4字节(32位),区间范围(3.402823e+38 ~ 1.401298e-45)
  7. double 大小:8字节(64位),区间范围(1.797693e+308~ 4.9000000e-324)
  8. boolean 大小:1位,区间(1 or 0)

数据类型转换

Java 中不同类型的数据进行运算需要先进行类型转换 转换类型的顺序从低到高依次是 byte,short,char -> int -> long -> float -> double 自动类型转换:(从高到低)

int i = 128;
	byte b = (byte)i;

注意:强制类型转换需要注意内存溢出的问题 强制类型转换:(从高到低)

int i = 128;
	double d = i;

注意: 1.boolean 类型不能转换 2.浮点数进行大小比较不准确

float f = 0.1f;      // 0.1
	double d = 1.0/10;   // 0.1
	System.out.println(f == d); // false

	// ======================================
	float f1 = 2121212121212121213f;
	float f2 = f1 + 1;
	System.out.println(f1 == f2); // true

Java中进制表示

// 二进制 0b // 八进制 0 // 十六进制 0x
	int i0 = 0b10;
	int i = 10;
	int i2 = 010;
	int i3 = 0x10;
经验分享 程序员 微信小程序 职场和发展