sensa_ 2019-03-30 14:10 采纳率: 0%
浏览 612

Java数组引用方法的时候,比如 trans(a[0],a[1]); 传递的是值还是地址?(代码 如下,结果不一样)

  1. static void trans(int a,int b)
  2. {a/=2;
  3. b+=3; }
  4. static void transt( int []a) { a[0]/=2; a[1]+=3;}
  5. static void show(int a,int b)
  6. {
  7. System.out.println("交换之后为:a="+a+",b="+b);
  8. }
  9. int d[]=new int[2];
  10. d[0]=10;
  11. d[1]=20;
  12. trans(d[0],d[1]);
  13. show(d[0],d[1]);
  14. int k[]=new int[2];
  15. k[0]=10;
  16. k[1]=20;
  17. transt(k);
  18. show(k[0],k[1]);

  19. 交换之后为:a=10,b=20

  20. 交换之后为:a=5,b=23

  • 写回答

3条回答 默认 最新

  • 海枯思烂 2019-03-30 14:39
    关注

    数组传地址,变量传值

    评论

报告相同问题?