编写一个学生类,包含姓名、学号、年龄、专业四个属性,并完善get /set方法、构造方法、toString()方法。
toString()方法参考如下:
public String toString() {
return "Student [name=" + name + ", id=" + id + ", age=" + age + ", major=" + major + "]";
}
有三位学生的信息,参考代码如下
Student s1=new Student("zhang",1401, 20, "computer");
Student s2=new Student("liu",1402,19,"law");
Student s3=new Student("wang",1403,17,"mechanical");
请完成以下内容:
1)创建一个ArrayList对象list,将上述三位学生加入到集合中,并遍历list,显示学生信息;
2)在学生 “liu”的前面插入一个学生,学生的信息如下:("li",1409,16,"english")
并再一次遍历list,确认学生“li”已经被正确插入。
3)根据学生的年龄,按照年龄从小到大的顺序对这4位学生进行排序,并再次遍历,显示学生信息。
学生类:
public class Student {
private String name;
private int id;
private int age;
private String major;
public Student(String name,int id,int age,String major){
this.name=name;
this.id=id;
this.age=age;
this.major=major;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
public String toString() {
return "Student [name=" + name + ", id=" + id + ", age=" + age + ", major=" + major + "]";
}
}
MyComparator类:重写比较器
import java.util.Comparator;
public class MyComparator implements Comparator<Student> {
@Override
public int compare(Student o1, Student o2) {
return o1.getAge()-o2.getAge();
}
}
测试类:StudentTest
import java.util.ArrayList;
import java.util.Collections;
public class StudentTest {
public static void main(String[] args) {
ArrayList<Student> list = new ArrayList<>();
list.add(new Student("zhang",1401,20,"computer"));
list.add(new Student("liu",1402,19,"law"));
list.add(new Student("wang",1403,17,"mechanical"));
for(Student stu:list){
System.out.println(stu);
}
System.out.println("---------------");
list.add(1,new Student("li",1409,16,"english"));
for(Student stu:list){
System.out.println(stu);
}
System.out.println("---------------");
MyComparator mc = new MyComparator();
Collections.sort(list,mc);
for(Student stu:list){
System.out.println(stu);
}
}
}
输出样例:
Student [name=zhang, id=1401, age=20, major=computer]
Student [name=liu, id=1402, age=19, major=law]
Student [name=wang, id=1403, age=17, major=mechanical]
Student [name=zhang, id=1401, age=20, major=computer]
Student [name=li, id=1409, age=16, major=english]
Student [name=liu, id=1402, age=19, major=law]
Student [name=wang, id=1403, age=17, major=mechanical]
Student [name=li, id=1409, age=16, major=english]
Student [name=wang, id=1403, age=17, major=mechanical]
Student [name=liu, id=1402, age=19, major=law]
Student [name=zhang, id=1401, age=20, major=computer]