黑马程序员技术交流社区

标题: 集合中迭代器的一个问题 [打印本页]

作者: zzw777    时间: 2016-6-28 16:24
标题: 集合中迭代器的一个问题
package com.heima.collection;

import java.util.ArrayList;
import java.util.Collection;

import com.heima.bean.Student;

@SuppressWarnings({ "rawtypes", "unchecked" })
public class Demo3_Collection {

        /**
         * * A:集合的遍历
                        * 其实就是依次获取集合中的每一个元素。
                * B:案例演示
                        * 把集合转成数组,可以实现集合的遍历
                        * toArray()
         */
        public static void main(String[] args) {
                //demo1();
                Collection c = new ArrayList();
        问题?        c.add(new Student("张三", 23));                                //Object obj = new Student("张三",23);
                c.add(new Student("李四", 24));
                c.add(new Student("王五", 25));
                c.add(new Student("赵六", 26));
               
                Object[] arr = c.toArray();                                        //将集合转换成数组
                for (int i = 0; i < arr.length; i++) {
                        //System.out.println(arr[i]);
                        Student s = (Student)arr[i];                        //向下转型
                        System.out.println(s.getName() + "..." + s.getAge());
                }
        }

        public static void demo1() {
                Collection c = new ArrayList();
                c.add("a");
                c.add("b");
                c.add("c");
                c.add("d");
               
                Object[] arr = c.toArray();                                                //将集合转换成数组
                for(int i = 0; i < arr.length; i++) {
                        System.out.println(arr[i]);
                }
        }

}
问题出处在上面代码已经标出: 请问为什么在    c.add(new Student("张三", 23));                                //Object obj = new Student("张三",23);         中,  new Student("张三",23)会自动提升为Object类???
作者: 云袭    时间: 2016-6-28 19:00
没有定义泛型,默认Object
作者: Ake丶    时间: 2016-6-28 21:09
Object类是所有类的父类,add方法明确了形参是Object类型,当然可以向上转型。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2