Kotlin-Demo/jTest/HashSetTest.java

73 lines
2.2 KiB
Java
Raw Normal View History

2024-08-12 23:58:38 +08:00
package jTest;
import java.util.HashSet;
import java.util.NavigableSet;
import java.util.SortedSet;
import java.util.TreeSet;
public class HashSetTest {
public static void main(String[] args) {
// 删除重复的元素
HashSet<String> hashSet = new HashSet<>() {
{
add("a");
add("b");
add("c");
add("d");
add("e");
add("a");
}
};
System.out.println(hashSet);// [a, b, c, d, e]
hashSet.forEach(System.out::println);
// TreeSet 会自动排序,即使是乱序也会自动排序
TreeSet<String> treeSet = new TreeSet<>() {
{
add("a");
add("b");
add("d");
add("e");
add("c");
}
};
System.out.println(treeSet);// [a, b, c, d, e]
treeSet.forEach(System.out::println);
// 排序Tree
SortedSet<String> sortedSet = new TreeSet<>() {{
add("a");
add("b");
add("d");
add("e");
add("c");
}};
System.out.println(sortedSet);// [a, b, c, d, e]
sortedSet.forEach(System.out::println);
NavigableSet<String> navigableSet = new TreeSet<>() {{
add("a");
add("b");
add("d");
add("e");
add("c");
}};
System.out.println(navigableSet);// [a, b, c, d, e]
// 大于a的元素没用返回null
System.out.println(navigableSet.higher("a"));// b
// 小于a的元素没用返回null
System.out.println(navigableSet.lower("a"));// null
// 小于等于b的元素没有返回null
System.out.println(navigableSet.floor("b"));// b
// 大于等于 a 的元素没用返回null
System.out.println(navigableSet.ceiling("a"));// a
// 删除第一个元素
navigableSet.pollFirst();
System.out.println(navigableSet);// [b, c, d, e]
// 删除最后一个元素
navigableSet.pollLast();
System.out.println(navigableSet);// [b, c, d]
}
}