A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张龙欢 中级黑马   /  2013-5-23 22:56  /  1912 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张龙欢 于 2013-5-24 20:30 编辑

执行ListTest.main的结果是什么?class Data {        int val;
        int getVal() {
                return val;
        }
        void setVal(int val) {
                this.val = val;
        }
}

public class ListTest {
        public static void main(String args []) {
                Data data = new Data();

                ArrayList list = new ArrayList();

                for (int i = 100; i < 103; i++) {
                        data.setVal(i);
                        list.add(data);
                }

                int j = 0;
                while (j < list.size()) {
                        Data tmp = (Data) list.get(j);
                        System.out.println("list(" + j + ") = " + tmp.getVal());
                        j++;
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

8 个回复

倒序浏览
本帖最后由 ~与狼共舞~ 于 2013-5-23 23:09 编辑

结果为
list(0) = 102
list(1) = 102
list(2) = 102
对不对?

for (int i = 100; i < 103; i++) {
                        data.setVal(i);
                        list.add(data);
                }
输出的三个值都应该是 i 在for循环中所能取到的最大值,因为每add()进一个值,都会覆盖前面进入的值

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 赞一个!

查看全部评分

回复 使用道具 举报
我在main方法中加入了这段代码   System.out.println(list.get(0)==list.get(1)); 输出的是true.说明存入的三个对象的地址是相同的,就是说存入的就是一个对象的地址。
                         黑马云青年为您解答
回复 使用道具 举报
xiewen 发表于 2013-5-24 01:22
我在main方法中加入了这段代码   System.out.println(list.get(0)==list.get(1)); 输出的是true.说明存入的 ...

如果问题以解决,请修改分类,谢谢合作。

尽量把问题详细全面一点提出来,如果不知道怎么提请看我的个性签名,点击红色的字体
回复 使用道具 举报
袁梦希 发表于 2013-5-24 01:24
如果问题以解决,请修改分类,谢谢合作。

尽量把问题详细全面一点提出来,如果不知道怎么提请看我的个性 ...

你也还没睡啊!
回复 使用道具 举报
楼主你好,如果问题以解决,请修改分类,谢谢合作。

回复 使用道具 举报
xiewen 发表于 2013-5-24 01:26
你也还没睡啊!

睡不着,撸帖子呢,看看有没有精彩的
回复 使用道具 举报
~与狼共舞~ 发表于 2013-5-23 23:01
结果为
list(0) = 102
list(1) = 102

是的!!!!!!!
回复 使用道具 举报
袁梦希 发表于 2013-5-24 01:26
楼主你好,如果问题以解决,请修改分类,谢谢合作。

希哥,不好意思现在才有时间,马上改过来!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马