Java数据类型包含基本类型和引用类型;
基本数据类型(primitive type):
整数类型:byte(8位), short(16位), int (32位) , long(64位);
浮点类型:float,double;
字符类型:char (16位,使用Unicode字符集);
布尔类型:boolean (C++ 的布尔类型是bool);
引用类型(reference type):
class(类);
interface(接口);
数组。
Java数据类型转换包含自动类型转换和强制类型转换;
自动类型转换:
byte、short、char类型被提升到int类型;
整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级。
强制类型转换:
高级数据要转换成低级数据,需用到强制类型转换,否则发生type mismatch编译错误。
包装类的作用:
基本数据类型转化为类对象;
类对象转化为基本数据类型;
实现不同数据类型的转化 (通过包装类的静态方法);
获取相应数据类型的范围信息 (通过包装类的静态属性)。
int和Integer的区别:
Integer是int的包装类,int则是java的一种基本数据类型 ;
Integer变量必须实例化后才能使用,而int变量不需要 ;
Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象而int则是直接存储数据值;
Integer的默认值是null,int的默认值是0。
转换方法:
例如:int a = Integer.parseInt(“123”)
逻辑运算符&和&&异同点:
&和&&共同点:都根据第一个表达式判断结果;
&和&&不同点:&&不再对第二个表达式进行运算,而&要对第二个表达式进行运算,即对&&若第一个为否则直接短路,不再计算第二个。
例如:a,b 为 false,对a & b,需要计算两个后得到结果,而 a && b在判断a为false后直接得出结果。
逻辑运算符与位运算符的异同点:
共同点:逻辑运算符(&&,||)两边是以boolean的形式来得到结果(结果也是boolean类型);位运算符(&,|)如果左右两边都为boolean类型,则执行方式与(&&,||)``一样;
不同点:位运算符还有一个作用:就是当运算符两边不是boolean类型时,而是数字则结果要进行二进制转换
break lab语句跳出多重循环;
break时在外循环入口语句的前方写上lab标号以跳出外层循环。