CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

有关arrays的一个简单问题

楼主cmfan2002()2003-11-02 22:35:25 在 Java / J2SE / 基础类 提问

程序如下:  
  public   class   Arrays   {  
        public   static   void   main(String[]   args)   {  
          int[]   a1   =   {   1,   2,   3,   4,   5   };  
          int[]   a2;  
          a2   =   a1;  
          for(int   i   =   0;   i   <   a2.length;   i++)  
              a2[i]++;  
          for(int   i   =   0;   i   <   a1.length;   i++)  
              System.out.println(  
                  "a1["   +   i   +   "]   =   "   +   a1[i]);}  
  输出结果为"a1[0]   =   2","a1[1]   =   3","a1[2]   =   4","a1[3]   =   5","a1[4]   =   6"  
  不明白为何有6,还有a2[i]++有啥作用?最好能解释一下程序,望大家指点!多谢 问题点数:20、回复次数:6Top

1 楼llshnshd(申)回复于 2003-11-02 22:55:35 得分 10

a2[i]++   就是将数组a2里的元素的值   加1再赋给a2[i]  
  相当于     a2[i]=a2[i]++1;  
   
  在java   里,数组是一个对象,所以当执行a2=a1时,就是说,a2和a1指向同一个对象,也可以说是指向同一个地址。所以改变a2里的值就等于是改变了a1里的值   。Top

2 楼chatlin(lintao)回复于 2003-11-02 22:55:55 得分 10

Java中任何东西都是对象,对象是引数传递,也就是你那a2   =   a1;把a1的地址传给a2,换句话说a1,a2同指一个对象,a2的值的变化一定反映再a1上Top

3 楼OExpress(浪子猫)回复于 2003-11-03 09:18:16 得分 0

以上两位说的太对了,相信楼住应该明白了!Top

4 楼csyan88(阿豆)回复于 2003-11-03 09:30:28 得分 0

a2=a1是传递句柄,就是说此时a2和a1指向的是相同的对象Top

5 楼hyhu(先飞笨鸟)回复于 2003-11-03 09:31:48 得分 0

数组传递的是reference,也就是引用,所以al和a2是指向同一个对象,a2[i]++是在使用过a2[i]后把a2[i]的元素加1,a1指向对象,输出就是2,3,4,5,6了!  
  Top

6 楼Bruceyao(江湖小虾米)回复于 2003-11-03 10:39:15 得分 0

执行a2=a1时,就是说,a2和a1指向同一个对象,也可以说是指向同一个地址。所以改变a2里的值就等于是改变了a1里的值Top

相关问题

  • 有关OLE简单问题
  • 和post有关的简单问题!
  • 一个简单的问题?有关TNMUDP
  • 有关POWERBUILDER的问题,很简单。
  • 简单的问题,有关tomcat!
  • 有关datagrid的简单问题
  • 一个有关select 的 简单问题
  • 一个有关dll的简单问题
  • 有关table的简单问题。
  • 有关opengl的简单问题

关键词

  • arrays

得分解答快速导航

  • 帖主:cmfan2002
  • llshnshd
  • chatlin

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo