转自:
http://www.java265.com/JavaCourse/202206/3749.html
下文笔者讲述java中set集合的用法简介说明,如下所示
Set集合的简介
set集合用于存储不重复的数据
它底层是使用map的key进行数据存储
Set集合的特点
无序: 存取顺序不一致 不重复: 可以去除重复 无索引: 没有带索引的方法 所以不能使用普通for循环遍历 也不能通过索引来获取元素
Set集合实现类及其特点
HashSet: 无序、不重复、无索引 LinkedHashSet: 有序、不重复、无索引 TreeSet: 排序、不重复、无索引
Set集合的示例
package com.java265.other;
import java.util.HashSet;
import java.util.Set;
public class TestSet {
/**
* java265.com set示例分享
*/
public static void main(String[] args) {
Set<String> set = new HashSet<>();
set.add(\"小美\");
set.add(\"肖号\");
set.add(\"张明就\");
set.add(\"勺子\");
System.out.println(set);
set.remove(\"肖号\");
System.out.println(set);
}
}
-----运行以上代码,将输出以下信息-----
[张明就, 小美, 勺子, 肖号]
[张明就, 小美, 勺子]
Set自定义排序
方式一
在自定义类实现Comparable接口
并重写里面的compareTo方法
设置比较规则
//改变的第一个地方:实现Comparable类
public class User implements Comparable<User> {
//改变的第二个地方:重写Comparable类中的compareTo方法
@Override
public int compareTo(User o) {
return this.age-o.age;
}
}
方式二: 集合自带比较器对象进行规则定义
Set<User> p = new TreeSet<>(new Comparator<User>() {
@Override
public int compare(User o1, User o2) {
return o1.getAge()-o2.getAge();
}
});
Set<User> p = new TreeSet<>((o1, o2) -> o1.getAge()-o2.getAge());
来源:https://www.cnblogs.com/java265/p/16387744.html
本站部分图文来源于网络,如有侵权请联系删除。
百木园