一.java包含的两大数据类型
java中的数据类型包含基本类型和引用类型两大类。
1.基本类型
byte ,-128~127,默认值 0
short,-32768~32767,默认值 0
int,-21474836478~2147483647,默认值 0
long,-2^63~2^63-1,默认值 0L
float, 10^38,默认值 0.0f
double, 10^308,默认值 0.0d
char, 0~65535,默认值 '\u0'
boolean,true、false,默认值 false
2.引用类型包含类,数组,接口三种类型。
二.java在什么情况会发生整型溢出?
在一个数太大超过了原有的数据类型范围
class fun{
public static void main(String args[]){
int n=2147483647;
System.out.print(n+1);
}
}
三.基本类型的包装类有哪些?其高频区间数据缓存范围分别是什么?
1.java基本类型的包装类有 Character,Byte,Short,Integer,Long,Float,Double.
其中Double和Float没有缓存,其他类型都有高频缓存区间。其高频缓存区间的缓存范围是:
Boolean:使用静态final,就会返回静态值
Byte:-128~127
Short:-128~127
Character:0~127
Long:-128~127
Integer:-128~127
Integer a=100;//自动装箱
Integer b=100;
System.out.print(a==b)
“==”用于比较a和b的引用是否相同,输出 true,两者相同。
四.什么是自动装箱,什么是自动拆箱?
1.基本数据类型和包装类之间可以自动的相互转化。
例:
Integer a=100;//自动装箱,相当于执行了 Integer.valueOf(x)
int b=a;//自动拆箱,相当于执行了a.intValue()
五.int和integer有什么区别,它们之间的相互转化是怎样的?
int是基本数据类型,integer是它对应的包装类。
Integer varInteger=100 等价于 Inter varInteger=Integer.valueOf(100);
int varInt=varInteger等价于 int varInt=varInteger.intValue()
六.逻辑运算符&和&&的区别是什么?逻辑运算符&和位运算符&的区别是什么?
逻辑运算符&和&&的区别是&&具有“短路”效应,如果左边的表达式能确定运算结果,则右边表达式不在进行运算。
int a=10,b=10;
if(a+1<0&&++b>0) a++;
System.out.print(b);
if(a+1<0&++b>0) a++;
System.out.print(b);
第一次输出b=10,第二次b=11;
逻辑运算符&和位运算符的区别:逻辑运算符运算结果是逻辑值0或1,而位运算符是残生一个与位宽较长的操作数相等宽的值。
七.Java语言中可以采用什么语句跳出多重循环?
用 break lab;
lab:
for(int i=1;i<=10;i++){
for(int j=1;j<=10;j++){
if(j>=2){
break lab;
}
System.out.println("break");
}
}
输出一个break。