<E> 泛型

/*
* 使用集合存储自定义对象并遍历
* 由于集合可以存储任意类型的对象,当我们存储了不同类型的对象,就有可能在转换的时候出现类型转换异常,
* 所以java为了解决这个问题,给我们提供了一种机制,叫做泛型
*
* 泛型:是一种广泛的类型,把明确数据类型的工作提前到了编译时期,借鉴了数组的特点
* 泛型好处:
* 避免了类型转换的问题
* 可以减少黄色警告线
* 可以简化我们代码的书写
*
* 什么时候可以使用泛型?
* 问API,当我们看到<E>,就可以使用泛型了
*
*/

 

public class GenericDemo {
    public static void main(String[] args) {
        //创建集合对象
        Collection<Student> c = new ArrayList<Student>();
        //创建元素对象
        Student s = new Student("zhangsan",18);
        Student s2 = new Student("lisi",19);
        //添加元素对象
        c.add(s);
        c.add(s2);
        //遍历集合对象
        
        Iterator<Student> it = c.iterator();
        while(it.hasNext()) {
            //String str = (String)it.next();
            //System.out.println(str);
            
            Student stu = it.next();
            System.out.println(stu.name+" "+stu.age);
        }
        
        //Student<StringBuilder> st1=new Student<StringBuilder>("张三",20);
        
        
        
    }
}

class Student {
    String name;
    int age;

    public Student(String name,int age) {
        this.name = name;
        this.age = age;
    }
}

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...