Java基本数据类型相关问题
2. 装箱和拆箱
1) Integer是int的包装类,int则是java的一种基本数据类型
2) Integer变量必须实例化后才能使用,而int变量不需要
3) Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值
4) Integer的默认值是null,int的默认值是0
8. char可以储存一个汉字么
可以。java采用unicode编码,2个字节(16位)来表示一个字符,无论是汉字还是数字字母,或其他语言。
char 在java中是2个字节, 所以可以存储中文
引申:utf-8跟unicode是不一样的。utf-8 的汉字占3个字节,gbk 是两个以utf-8为例,utf8是一个变长编码标准,可以以1~4个字节表示一个字符,而中文占3个字节,ascII字符占1个字节
9.Java数据类型分为两大类10.数据类型扩展
1) 整数扩展:进制
二进制0b 0b11 = 3
八进制0 011 = 9
十六进制0x 0x11=17
2) 浮点数扩展
float d1 = 233333333333333f;
flaot d2 = d1 + 1;
d1 == d2 结果为 true !
float 有舍入误差,结果并不精确,因此最好完全避免使用浮点数进行比较
3)字符扩展
①字符可被强制转换为数字,参照ASCII码
常用 a = 97 , A = 65
②转义字符
常用 "\n" 换行 "\t" 制表符
4)boolean扩展
if(flag==true)可简写为 if(flag) 代码要精简易读
11.类型转换
由低到高 → byte , short , char , int , long , float , double
强制转换 (类型)变量名 高→低
自动转换 低→高
注意:①不能对布尔值进行转换
②不能把对象类型转换为不相干的类型
③在把高容量转换为低容量的时候,强制转换
④转换的时候可能存在内存溢出或者精度问题

浙公网安备 33010602011771号