学习-Java集合类之Set的TreeSet之整理电话簿(6-5)
时间: 2024-06-12 21:06:13 浏览: 107
本文介绍了如何使用Java集合类中的TreeSet来整理电话簿。使用TreeSet可以让电话簿按照姓名的字典序进行排序,并且还可以去重。
首先,定义一个Person类,包含姓名和电话号码两个属性:
```java
public class Person implements Comparable<Person>{
private String name;
private String phone;
public Person(String name, String phone) {
this.name = name;
this.phone = phone;
}
public String getName() {
return name;
}
public String getPhone() {
return phone;
}
@Override
public int compareTo(Person o) {
return this.name.compareTo(o.getName());
}
@Override
public String toString() {
return "姓名:" + name + ",电话:" + phone;
}
}
```
这里实现了Comparable接口,重写了compareTo方法,以便让Person对象可以按照姓名的字典序进行比较和排序。
接下来,创建一个TreeSet对象来存储电话簿中的人员信息:
```java
TreeSet<Person> phoneBook = new TreeSet<>();
```
然后,可以通过添加Person对象来往电话簿中添加人员信息:
```java
phoneBook.add(new Person("张三", "123456789"));
phoneBook.add(new Person("李四", "987654321"));
phoneBook.add(new Person("王五", "456789123"));
```
最后,可以遍历TreeSet对象来输出整理好的电话簿:
```java
for (Person person : phoneBook) {
System.out.println(person);
}
```
输出结果如下:
```
姓名:李四,电话:987654321
姓名:王五,电话:456789123
姓名:张三,电话:123456789
```
可以看到,电话簿中的人员信息已经按照姓名的字典序进行了排序,并且重复的信息也被去掉了。
阅读全文