基本数据类型

基本数据类型种类

整数

  • byte
  • short
  • int
  • long

浮点型

  • float
  • double

字符型

  • char

布尔型

  • boolean

数据类型的转换

强制转换

int a = 127;
byte b = (byte)a;
System.out.println(b);  //127

int a = 128;
byte b = (byte)a;
System.out.println(b);  //-128  byte存储的数据为-128~127,128超出了byte存储区间

double a = 22.33;
byte b = (byte)a;
System.out.println(b);  //22  浮点转整数,需要注意精度问题

强制转换时需要注意数据的大小,防止高容量转低容量时出现因为数据过大产生问题,包括浮点型转整数型,还涉及到精度部分,也需要注意

自动转换

byte c = 3;
int d = c;
System.out.println(d); //3

byte c = 3;
double d = c;
System.out.println(d);  //3.0

char存储的字符是存在于Unicode编码表中的数据,格式为u0000~uffff,可通过\符号进行转义(转义符号\,在后面加上一些特定的字符,会产生不同的效果,例如\n意味着换行)

System.out.println((int)'王');  //29579
System.out.println('\u5555'); //啕

boolea类型不参与数据类型转换

java中各进制的展示

System.out.println(0b10);  //2  二进制 0b
System.out.println(010);  //8  八进制 0
System.out.println(10);  10  十进制
System.out.println(0x10);  //16  十六进制 0x 0~9 A~F

浮点数的精度问题

float a = 2222222222222222F;
float b = a + 1;
System.out.println(a == b);  //true

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

这块我也不是太理解,只知道是精度的问题,但是感觉多少有点抽象,因为我在平时的工作中,float、double用的并不多,不是太熟悉,只是知道这块有大坑

java7新特性

int a = 1_0000_0000;
System.out.println(a);  //100000000  可通过_分隔数字,方便查看位数,但是并不影响输出

8大基本类型,我在工作过程中,用的最多的是int,boolean,偶尔会用于double,只知道float好像有坑,所以几乎没用过,也就不太了解,后续有时间单独去了解一下。字符串用引用类型String,金额用BigDecimal,至于整数、浮点型的数值范围,可以在对应的包装类中看到

posted @ 2022-09-07 17:43  King泰妍  阅读(45)  评论(0编辑  收藏  举报