方法参数是基本类型和引用类型的区别
来源:互联网 发布:淘宝导航栏怎么装修 编辑:程序博客网 时间:2024/06/05 18:28
1 方法参数是基本类型时,传递的是值。
2 方法参数是引用类型时,传递的是内存地址值
public class MethodDemo_3{ public static void main(String[] args){ /*int a = 1; int b = 2; change(a,b); System.out.println(a); //1 System.out.println(b); // 2 */ int[] arr = {1,2,3,4}; System.out.println(arr[2]); // 3 change(arr); System.out.println(arr[2]); // 100 } public static void change(int[] arr){ arr[2] = 100; } public static void change(int a,int b){ a = a+b; b = b+a; }}
当参数是基本类型时,在调用方法时将值传递到方法中,运行方法,运行结束方法退出,对原本main中定义的变量没有任何操作(没有return),所以注释处输出仍为1和2。
当参数是引用类型时,定义数组时,在堆内存中存储了数组的数据,返回这组数据的地址给了arr,然后在调用方法时,传递的也是这个地址。在chang方法中,同样也是根据这个地址找到数组的信息,然后改变了这个数据的【2】数据,所以之后main方法输出时,输出的是改变了之后的数组。
也就是说 ,当参数是基本类型时,方法传的只是值,实际上main 里的a和chang方法里的a是不同的两个东西,如果方法不返回值,change里不管怎么改变,与main无关。
而引用类型时,两个方法通过同一个地址,使用的是同一个堆内存里的数组,是同一个东西,所以change方法里面改变了这个数组的之后,main再调用也是改变之后的数组
阅读全文
0 0
- 方法参数是基本类型和引用类型的区别
- java方法参数基本类型和方法参数是引用类型的区别
- 基本类型和引用类型的区别
- 基本类型和引用类型的区别
- 引用类型和基本类型的区别
- 基本引用类型和对象引用类型的区别
- 基本类型和引用类的区别
- 基本类型和其对应的引用类型的区别
- 基本类型/引用类型的参数传递
- 引用类型和基本类型区别
- 引用类型和基本类型区别
- 引用类型和基本类型区别
- 引用类型和基本类型区别
- Java中的基本类型和引用类型变量的区别
- JS基本类型和引用类型的区别
- 引用类型和基本类型的区别与联系
- final修饰基本类型和引用类型变量的区别
- JS基本类型和引用类型赋值的区别
- 前端开发环境搭建及上传至github
- Linux必杀(十八):VI、VIM编辑器
- 三目运算求中间值
- 最短路径算法(Dijkstra)
- 【JAVA 提高班之四】抽象类与接口
- 方法参数是基本类型和引用类型的区别
- Caffe源码(一): math functions
- iOS 开源一个高度可定制支持各种动画效果,支持单击双击,小红点,支持自定义不规则按钮的tabbar
- js常见编程题整理(持续更新中)
- Struts2框架
- Angular基础(七) HTTP & Routing
- NDK版本下载地址
- 用二分做LIS
- linux route命令的使用详解