一、基本类型变量和引用变量的区别
1、java8大基本类型:byte、char、boolean、int、short、long、float、double
每个变量都代表一个存储值的位置。声明一个变量的时候,就是在告诉编译器这个变量可以存放一个什么类型的值。
对于基本类型来说,对应内存存储的就是基本类型值本身;
对于引用变量来说,存储的就是该类型的一个引用,是对象的存储地址;
如 int i = 1; int类型i对应存储的值就是1;
int[] j = new int[10] ; j对应存储的值是一个引用reference,指明对象的内容在什么位置;
2、赋值
将一个变量赋值给另外一个变量
对于基本类型变量来说,赋值就是将变量的实际值赋值给另一个变量,也就是所说的值传递,如下例子,调用change(nums[0],nums[1]),nums 的结果还是{5,7};
对于 引用类型变量而言,赋值就是将引用赋值给变量,也就是所说的引用传递,如下例子,调用change(nums),nums 的结果是{7,5};
如 int[] nums = {5,7};
public void change(int i ,int j){
int temp = i;
i = j;
j=temp;
}
public void change(int[] nums){
int temp = nums[0];
nums[0] = nums[1];
nums[1] = temp;
}