Kotlin-Demo/jTest/HashSetTest.java

73 lines
2.2 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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]
}
}