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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 939676244 中级黑马   /  2013-9-16 16:20  /  3307 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 939676244 于 2013-9-16 20:48 编辑

Iterator it = ts.iterator();
                while(it.hasNext())
                {
                        Student stu = (Student)it.next();
                        System.out.println(stu.getName()+"..."+stu.getAge());
                }
        }
}

Student stu = (Student)it.next();
这句话是什么意思呢,百度也没百度出来

评分

参与人数 1技术分 +1 收起 理由
黄兴旺 + 1

查看全部评分

6 个回复

倒序浏览
Student stu = (Student)it.next();//把集合中的对象强制转换为Student类型

评分

参与人数 1技术分 +1 收起 理由
黄兴旺 + 1

查看全部评分

回复 使用道具 举报
Student stu = (Student)it.next();
it.next()返回的是Object类型。
(Student)it.next();是将Object类型强制转换成Student类型。

评分

参与人数 1技术分 +1 收起 理由
黄兴旺 + 1

查看全部评分

回复 使用道具 举报
那句话是将it.next()(属于Object类型)强制转换为Student类型,这样才能够调用getName()方法和getAge()方法。

评分

参与人数 1技术分 +1 收起 理由
黄兴旺 + 1

查看全部评分

回复 使用道具 举报
Student stu = (Student)it.next();
这句两句的合并是为了将Object类型强制转换为Student类。
Object obj =it.next();
Student stu = (Student)it.next();


为什么要强制转换呢?
因为你要操作的是自定义的对象Student,只有将Object转换为Student类型,你才能使用Student类中的自定义方法来进行操作。

评分

参与人数 1技术分 +1 收起 理由
黄兴旺 + 1

查看全部评分

回复 使用道具 举报
集合遍历
回复 使用道具 举报
Student stu = (Student)it.next();
()表示强制转换,在泛型没出来之前,都是这么表示的,泛型出来后就需要强制转换了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马