Java数据类型的总结
Java中的基本数据类型主要分为两个大类:
(1)第一种是原始类型,原始类型类型有八种,字符型char,数值类型byte、short、int、long、float、double,以及布尔类型boolean ;其基本信息如下:
字符型,char,值域16bits,表示范围0~65535;
字节型,byte,值域8bits,表示范围-127~128;
整型,int,值域32bits,表示范围-2147483648~2147483647;
短整型,short,值域16bits,表示范围-32768~32767;
长整型,long,值域64bits,表示范围已经很大,为负的2的63次方到正的2的63次方减1;
浮点型,float,值域32bits,表示范围一般不会被超过
双精度,double,值域64bits;
布尔型,boolean,值域图ture/flase,表示范围只有真假两种结果;
在具体的应用中,要根据变量所要赋值的范围,选择合适的类型;不同的数值类型并不是不能相互转换,需要有相应的变化.在数值类型中,小范围的整数类型值可通过赋值运算直接转换为大范围的原始类型,而一些大范围的类型转换为小范围的类型,则需要强制转换;例如:
1.下面的语句可以在Java中直接通过:
byte b;int i=b; long l=b; float f=b; double d=b;
2.如果低级类型为char型,向高级类型(整型)转换时,会转换为对应ASCII码值,例如
char c='c'; int i=c;
System.out.println("output:"+i);输出:output:99;
3.对于byte,short,char三种类型而言,他们是平级的,因此不能相互自动转换,可以使用下述的强制类型转换。
short i=99 ; char c=(char)i; System.out.println("output:"+c);输出:output:c;
强制转换,将"大"数据转换为"小"数据时,你可以使用强制类型转换。即你必须采用下面这种语句格式: int n=(int)3.14159/2;可以想象,这种转换肯定可能会导致溢出或精度的下降
(2) 第二种是对象类型.也叫引用类型,所有用class(interface,abstract class)定义的类都属于该类型,另外数组也属于该类型,可以说,这一类也可称为复杂数据类型.这些由类生成的对象的类型,将是我以后java学习的主要内容之一.现在我主要学习String类,String是Java中的一个类,而不是一种基数据类型,因为它有自己的方法和属性.