java中的ArrayList<Student> students=new ArrayList<Student>();什么意思,没见过ArrayList<Student>

么见过大<>号的

这是JDK1.5之后新特性 泛型
当然你这样也不会报错
ArrayList students = new ArrayList ();
students.add(......);//假定需求是在studnets里存放student对象
但是List是一个集合,它是可以存任意对象的
假如不用泛型来限定对象类型 在add时 完全有可能students.add(Teacher),这个在编译是允许的,但是当你遍历List取出来的时候就会有问题了 你知道用什么类型取吗 用Student取那你当中存的Teacher肯定报错 所以用泛型能在编译时就帮你限定 不会出现类型转换错误。当然这只是泛型的一个好处 具体的还是要LZ自己看看API或者教程
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-08
类型ArrayList是集合,在定义ArrayList类型变量时,后面的<>中定义泛型,就是用来定义集合中每一个元素的类型,你的代码中的students对象的每一个元素都是Student类型的对象。追问

那如果不定义这个,是不是ArrayList集合中的元素就是混合的呢?

追答

如果不定义泛型,那么元素的类型就为Object,可以放任意类型,因为Object是所有类的父类。但是这不意味着你就可以混合,集合中的元素类型要一致。

追问

哦,明白了,但如果要是用来声明一个方法(函数)呢?如:public static ArrayList queryStudent(){return...}
这又是什么?
之前是声明一个空间来存储只符合Student对象的,那这样做???

追答

道理是一样的。函数queryStudent返回结果集ArrayList,其中元素都为Student类型。
如果要获取结果集中的每一个Student对象,需要使用迭代器循环获取。

本回答被提问者采纳
第2个回答  2012-10-08
里面的ArrayList<Student>是java5的一个新特性叫 "泛型" 里面的Student是一个po类 意思是 ArrayList里面只能放Student对象。
第3个回答  2012-10-08
Student应该是自定义的一个类,<>里面也可以是String,Double,Integer等类型,叫泛型,指ArrayList里面存储的都是这个类型的数据
第4个回答  2012-10-08
泛型,代表 这个 ArrayList是有类型的,类型是Student,这个ArrayList只能存这种类型的对象