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只能存这种类型的对象

java中的ArrayList<Student> students=new ArrayList<Student>();什么...
ArrayList students = new ArrayList ();students.add(...);\/\/假定需求是在studnets里存放student对象 但是List是一个集合,它是可以存任意对象的 假如不用泛型来限定对象类型 在add时 完全有可能students.add(Teacher),这个在编译是允许的,但是当你遍历List取出来的时候就会有问题了 你知道用什么类型...

用Scanner录入学生的信息,包括学号,姓名,年龄
import java.util.ArrayList;public class Main{ public static void main(String[] args){ Scanner reader=new Scanner(System.in);ArrayList<Student> students=new ArrayList<Student>();while(reader.hasNext()){ String stu=reader.next();String[] stus=stu.split(",");if(stus.length==3){...

...= new ArrayList<students>()与new ArrayList()有何区别和关系呢...
ArrayList<students> array = new ArrayList<students>(),是指定了存放的类型,里面只能放students对象,否则会异常。ArrayList array = new ArrayList() 可以放不但可以放students,还可以放其他对象!!

Java中的 static List<Student> students=new ArrayLis
定义了一个类变量,它是一个集合,并初始化为ArrayList类型,集合保存的是Student对象,<Student>这是泛型用法,这样在其他地方给students添加内容时只能添加Student对象

请Java高手帮我解释一下这段代码,谢谢了
这相当于一个foreach语句~是jdk1.5以上的版本才有的 相当于 for(int i=0;i<students.size();i++){ Student st = (Student)students.get(i);System.out.println(st.toString());} 或者用迭代其也可以实现:Iterator it = students.iterator();while(it.hasNext()){ Student st = (Student...

使用ArrayList集合存储10个学生信息。使用ArrayList集合存储10个学生信...
import java.util.ArrayList;public class Main { public static void main(String[] args) { ArrayList<Student> students = new ArrayList<>();students.add(new Student("Alice", 18, "Female", "Freshman"));students.add(new Student("Bob", 19, "Male", "Sophomore"));students.add(new...

Java ArrayList的使用
return name.equals(sd.name);}return false;}}public class t2 {public static void main(String[] args) {Scanner reader = new Scanner(System.in);Student[] stu = new Student[4];\/\/ 定义ArrayList<Student> stus = new ArrayList<Student>();\/\/ ArrayList泛型,每个元素是1个学生。System...

有10个学生,每个学生的数据包括学号,姓名,三门课的成绩,从文件中读取...
private static List<Student> loadStudents(String filePath) { List<Student> students = new ArrayList<Student>(); InputStream is = null; InputStreamReader isr = null; BufferedReader br = null; try { is = new FileInputStream(new File(filePath)); isr = new InputStreamReader(is, "UTF-8"...

java中List<?>是什么意思?
List指的是集合.<>是泛型,里面指定了这个集合中存放的是什么数据.比如有一个学生类Student,Student里面包含了学生的一些信息.这样每一个Student对象就代表了一个学生.此时List<Student>就代表这个集合中存放了很多个学生对象,这个集合就像一个班级一样....

怎么用java8 lamada 提取集合中每个对象的属性?
List<Student> students = new ArrayList<Student>();List<String> names =students.stream().map(Student::getName).collect(Collectors.toList());也可以重新写你那个对象的toString()方法:譬如你那个对象类为Studentclass student{private int id;private String password;private String username;...

相似回答