8种原始数据类型,全部为小写字母;
boolean 布尔型 true 或 false
bype 一个字节 -128-127;bype b=125;(符号占一位,)
char 两个字节 0-65535
int 4个字节的整数
long 8个字节的整数
float 4个字节的浮点数(单精度)//浮点数是指小数位数不确定的小数。6-7位精度
double 8个字节的浮点数(双精度)14-15位精度。
char类型补注:
char类型,以单引号包含值,值除了为转义开头的字符,必须单个字符('\u0060','a');
转义字符后面代表4个16进制的数字。0060=6*16=96。96为该字符的unicode编码。
和String 比较:String 变量由 双引号包含字符,String是一个类,不是一个原始类型。和char保存方式有本质区别。
强制转换:
例如以64位存储数值和32位存储数值比较,64位是大盒子,32位是小盒子。当大盒子放入小盒子中时采用强制转换 (小盒子)大值;
例:
float fa = 123.02 是错误的,小数类型默认是double型的,要把64位的double 转换成32 位的float.需要进行强制转换,或者在数字末尾加 f或F.
同理,Double fb =123d;(整数默认是int型的。)
如果遇到中文不能编译的情况,linux下用locale命令查看本地编码模式。编码,解码需要一个恰当的字符集。
整数型的数据可以保存 十进制,8进制,16进制。整数值缺省为4个字节。一个大整数超出4个字节。后面加L 或l.
int a = 032;//0开头表示八进制
int b = 0x771;//ox开头表示16进制。
3种分类(按类型):
a.布尔型 boolean
b.整数型 byte,char,short,int,long
c.小数型 float,double
4种分类(按字节)
boolean
1个字节 byte
2个字节 short char
4个字节 int float
8个字节 long double
2种分类
布尔型:boolean
数字型:其他7种。
2进制,8进制,16进制 位数间的转换。
97位10进制转化成2进制。
1.可以采用 除2取余的方式。
2.分拆为 64+32+1 =》 1000000+100000+0000001
byte ba = 0x771;
编译报错,16进制771为(),超出bype一个字节的范围,通过强制转换byte ba=(byte)0x771;
截取后8位。转化10进制:71=》7*16+1=113,或者 0111+0001=113