黑马程序员技术交流社区

标题: 关于数组String[] arr的问题!arr不是记录地址值吗? [打印本页]

作者: freshnboy    时间: 2016-3-26 12:22
标题: 关于数组String[] arr的问题!arr不是记录地址值吗?
本帖最后由 freshnboy 于 2016-3-26 12:24 编辑
  1. public static void main(String[] args) {
  2.                 String[] arr=new String[5];
  3.                 for (int i = 0; i < arr.length; i++) {
  4.                         arr[i]=i+"";
  5.                 }
  6.                 swaparr(arr);
  7.                 for (int i = 0; i < arr.length; i++) {
  8.                         System.out.println(arr[i]);                        
  9.                 }
  10.         }

  11.         public static void swaparr(String[]arr) {
  12.                 String[] arr1=new String[5];
  13.                 for (int i = 0; i < arr1.length; i++) {
  14.                         arr1[i]=i*2+"";
  15.                 }
  16.                 arr=arr1;
  17.         }
复制代码
输出结果为: 0 1 2 3 4
arr不是记录的地址值吗?为什么传入了方法,却没有返回来呢?
作者: zhoubinjian    时间: 2016-3-26 12:30
返回你得有return啊
作者: zshhappy    时间: 2016-3-26 13:02
你把输出的for循环放你定义的方法里面
作者: 潘耿威    时间: 2016-3-26 13:54
局部变量名称和成员变量名称一样时,在方法中使用的时候,采用的是就近原则。方法中的arr 与main() 中的arr 不是同一个 数组
作者: freshnboy    时间: 2016-3-26 16:28
潘耿威 发表于 2016-3-26 13:54
局部变量名称和成员变量名称一样时,在方法中使用的时候,采用的是就近原则。方法中的arr 与main() 中的arr ...

啊啊!对对对!就是这个问题!谢谢!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2