自定義一個Student對象類
代碼:
1 import java.util.Objects; 2 3 public class Student { 4 private String name; 5 private int age; 6 7 public Student(String name, int age) { 8 this.name = name; 9 this.age = age; 10 } 11 12 public String getName() { 13 return name; 14 } 15 16 public void setName(String name) { 17 this.name = name; 18 } 19 20 public int getAge() { 21 return age; 22 } 23 24 public void setAge(int age) { 25 this.age = age; 26 } 27 28 @Override 29 public boolean equals(Object o) { 30 if (this == o) 31 return true; 32 if (o == null || getClass() != o.getClass()) 33 return false; 34 Student student = (Student) o; 35 return age == student.age && 36 Objects.equals(name, student.name); 37 } 38 39 @Override 40 public int hashCode() { 41 return Objects.hash(name, age); 42 } 43 }
使用HashSet存儲對象
代碼:
1 import java.util.HashSet; 2 public class test { 3 public static void main(String[] args) { 4 //創建集合對象 該集合中存儲 Student類型對象 5 HashSet<Student> students = new HashSet<>(); 6 //存儲 7 Student stu1 = new Student("王健林", 50); 8 Student stu2 = new Student("馬化騰", 40); 9 Student stu3 = new Student("王雲", 30); 10 students.add(stu1); 11 students.add(stu2); 12 students.add(stu3); 13 /* 結果: 14 王雲的年齡是30 15 王健林的年齡是50 16 馬化騰的年齡是40*/ 17 for(Student student : students){ 18 System.out.println(student.getName()+"的年齡是"+student.getAge()); 19 } 20 21 22 } 23 }