Spring Boot 最核心的 25 個註解
阿新 • • 發佈:2022-12-05
Set集合特點:
① 一次只存一個元素,
② 不能儲存重複的元素
③ 儲存順序和取出來的順序不一定一致不能儲存重複的元素
可以利用②這一特點,完成去重的功能。
一:Set集合去掉List集合中重複元素
public static void main(String[] args) { //利用set集合 去除ArrayList集合中的重複元素 ArrayList<String> list = new ArrayList<>(); list.add("1"); list.add("1"); list.add("2"); list.add("2"); list.add("3"); list.add("3"); list.add("4"); list.add("4"); System.out.println("去重前的List集合:"+list); Set<String> set = new HashSet<>(); set.addAll(list); System.out.println("Set集合:"+set); list.clear(); // 清空原有元素 放入被list去重後的元素 list.addAll(set); System.out.println("去重後的List集合:"+list); }
執行結果:
去重前的List集合:[1, 1, 2, 2, 3, 3, 4, 4]
Set集合:[1, 2, 3, 4]
去重後的List集合:[1, 2, 3, 4]
二:Set集合去掉字串中重複子串
public static void main(String[] args) { String str = "aaab"; System.out.println("字串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一共 7 個"); Set<String> set = new HashSet<String>(); for (int step = 0; step <= str.length() - 1; step++) { //掃描全部子串 for (int begin = 0, end = 1 + step; end <= str.length(); begin++, end++) { String kid = str.substring(begin, end); //擷取字串子串 set.add(kid); //將子串放入set集合,完成去重 } } System.out.println("去除重複子串後的全部子串有:"+set.size()+"個"); System.out.println("分別是:" + set); }
執行結果:
字串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一共 7 個
去除重複子串後的全部子串有:7個
分別是:[aa, aaa, a, ab, b, aab, aaab]