数据类型
Java的类型分为两大类
-
基本类型(Primitive Type)
-
引用类型(Reference Type)
八大基本数据类型
-
int 占4个字节范围:-2147483648~2147483647
-
byte 占1个字节范围:-128~127
-
short 占2个字节范围:-32768~32767
-
long 占8个字节范围:-9223372036854775808~9223372036854775807(数字后加L表示为long类型)
-
float 占4个字节范围同int(数字后加F表示为float类型)
-
double 占8个字节范围同long
-
char 占2个字节
-
boolean 占1位,值只有true和false两个
拓展
进制
-
二进制 0b
-
十进制
-
八进制 0
-
十六进制 0x
int i=10;//十进制
int i2=010;//八进制
int i3=0x10;//十六进制
数据类型
浮点的性质:有限、离散、舍入误差、大约、接近但不等于
最好完全避免使用浮点数进行比较
有一个数学工具类:BigDecimal 大数字
字符
强制转换
char c1='a';
char c2='中';
System.out.println((int)c1);
System.out.println((int)c2);
char a='/u0061';//输出a
所有字符本质还是数字
转义字符
-
\t 制表符
-
\n 换行
-
……
类型转换
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
运算中,不同类型的数据先转化为同一类型,在进u运算。
-
强制类型转换(高-->低)
-
自动类型转换(低-->高)
int a=128;
byte b=(byte)a;//内存溢出
注意:
-
不能对布尔类型进行转换。
-
不能把布尔类型转换为不相干的类型。
-
在把高容量转换到低容量时为强制转换。
-
转换时有可能存在内存溢出或精度问题。
-
操作较大的数时,注意溢出问题。