黑马程序员技术交流社区
标题:
关于迭代器返回值的类型问题
[打印本页]
作者:
wahaha
时间:
2013-3-11 07:46
标题:
关于迭代器返回值的类型问题
迭代器的next方法返回值类型是Object,所以要记得类型转换。 思考:为什么next方法的返回类型是Object的呢?
作者:
罗海清
时间:
2013-3-11 07:55
因为不知道你存入的是Person还是Demo还是谁谁的对象。例如,如果不加上泛型,
你可以add(new Person()),你还可以add(new Demo());
add(new Student());还可以add("java01");
add(1222);
等等等等。。。。
所以你通过迭代器取出来的时候,如果不用Object,你用谁?因为Object是上帝。。。可以指向任何的对象。。。
作者:
邹学良
时间:
2013-3-11 08:13
本帖最后由 邹学良 于 2013-3-11 10:15 编辑
因为JAVA定义的iterator作为一个负责定义访问和遍历元素的接口
而为了能让多种数据类型实现,它定义的元素都是上帝类型Object型的
每当你调用迭代器时都是在实现迭代器接口
作者:
谢洋
时间:
2013-3-11 12:28
jdk1.5以前返回的都是Object
1.5以后,如果不用泛型,默认返回类型为Object,如果用泛型,就会根据实际参数而定
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2