数据类型可分为基本类型和引用类型.
具体内容如下图:
(小编自己的脑图,友友们可以根据自己的爱好汇总知识点哦!)
下面是关于基本类型和引用类型的相关习题:
抓紧练起来吧!友友们!!
1、指出下面程序运行结果,并说明理由。
public class Test {
public static void main(String[] args) {
int a=6; //给a赋值
int b=a; //将a的值,赋值给b,此时a的值为6
b++; //b自加1,最后值为7
System.out.println("a="+a); //此时输出的是a值哈!不要被b给搅晕啦!
}
}
结果:6
2、 指出下面程序运行结果,并说明理由。
public class Test {
public static void fun(int k) { //fun()方法
k++; //k自加1
System.out.println(k); //输出语句
}
public static void main(String[] args) {
int n=8; //给n赋值
fun(n); //调用fun方法,方法内也有输出语句
System.out.println(n); //输出语句
}
}
结果:9 8 //fun(n);为9 n为8
3、指出下面程序运行结果,并说明理由。
public class Test {
public static void main(String[] args) {
int[] ns1= { 0,1,2,3,4,5}; //定义ns1数组
int[] ns2=ns1; // 此处是给数组ns2申请的空间覆盖了ns1的空间
ns2[0]++; //(ns2[0]++,是1)
System.out.println(ns1[0]); //此时输出的是原来的ns1数组内的第一个元素
}
}
结果:1
4、指出下面程序运行结果,并说明理由。
public class Test {
public static void main(String[] args) {
int[] ns1= { 0,1,2,3,4,5}; //此处申请了两个空间
int[] ns2= { 0,1,2,3,4,5};
ns2[0]++; //(ns2[0]++,是1)
System.out.println(ns1[0]); //输出的是数组ns1中的第一个元素
}
}
结果:0
5、指出下面程序运行结果,并说明理由。
public class Test {
public static void fun(int[] ns) { //fun方法
ns[0]=99; //对下面定义的ns1数组的第一个元素进行修改
}
public static void main(String[] args) {
int[] ns1= { 0,1,2,3,4,5}; //定义数组ns1
fun(ns1); //调用fun方法,参数为ns1数组
System.out.println(ns1[0]); //修改后的数组中的第一个元素为99
}
}
结果:99
6、指出下面程序运行结果,并说明理由。
public class Test {
public static void fun(int[] ns) { //fun方法
ns=new int[2]; //此处重新实例化对象了哈!那么就跟下面的ns1没有多大关系啦!
ns[0]=99; //新对象ns的第一个元素为99
}
public static void main(String[] args) {
int[] ns1= { 0,1,2,3,4,5}; //此处的数组ns1不变
fun(ns1); //调用fun方法
System.out.println(ns1[0]); //所以输出还是ns1最开始的第一个元素哈!
}
}
结果:0
7、 读程序,确定程序的输出结果
public class Java {
public static void main(String[] args) {
String s="Hello";
System.out.println(s); //此时输出Hello
change(s); // 方法内没有输出语句,并且分号结束,方法体生命周期结束
System.out.println(s); //输出仍然是Hello
}
public static void change(String s){ //change方法
s=s+"abc"; //s+"abc"字符串拼接
}
}
本程序的输出结果:Hello Hello