8大基本数据类型 | char,byte,short,int ,long,float,double,boolean |
引用数据类型 | 类,数组,接口 |
1、对于基本数据类型,不同的变量会分配不同的空间,并且存储空间中存储的是该变量的值。赋值操作传递的是变量的值,改变一个变量的值不会影响另一个变量的值。
2、对于引用数据类型,赋值是把原对象的引用(可理解为内存地址)传递给另一个引用。对数组而言,当一个数组名直接给另一个数组名赋值时,相当于传递了一个引用,此时,这两个引用指向同一个数组,也就是指向同一个内存空间。
public class Test{
public static void main(String args[]){
//定义基本数据类型
int a=10;
int b=a;
System.out.println("ab分别是:"+a+" "+b);
b=20;//赋值后
System.out.println("给其中一个赋值后,ab分别是:"+a+" "+b);
//定义引用数据类型
int c[]=new int[2];
c[0]=0;
c[1]=1;
int d[]=c;
System.out.println("c[0],c[1]分别是:"+c[0]+c[1]);
System.out.println("d[0],d[1]分别是:"+d[0]+d[1]);
d[0]=100;
d[1]=200;//给d数组定义值赋值,c数组对应值也会改变
System.out.println("c[0],c[1]分别是:"+c[0]+" "+c[1]);
System.out.println("d[0],d[1]分别是:"+d[0]+" "+d[1]);
}
}
运行结果是: