91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

Java set去重如何處理自定義比較器

小樊
81
2024-11-27 14:41:13
欄目: 編程語言

在Java中,使用Set去重時,可以通過提供一個自定義的比較器(Comparator)來實現。自定義比較器允許您根據自定義的規則對集合中的元素進行比較,從而實現去重。以下是一個使用自定義比較器的示例:

import java.util.Comparator;
import java.util.HashSet;
import java.util.Set;

class CustomComparator implements Comparator<String> {
    @Override
    public int compare(String s1, String s2) {
        // 在這里實現自定義的比較規則
        return s1.compareToIgnoreCase(s2); // 示例:按字母順序比較,不區分大小寫
    }
}

public class Main {
    public static void main(String[] args) {
        Set<String> set = new HashSet<>();
        set.add("Apple");
        set.add("banana");
        set.add("Orange");
        set.add("apple"); // 重復元素

        // 使用自定義比較器去重
        Set<String> uniqueSet = new HashSet<>(set, new CustomComparator());

        System.out.println("Original set: " + set);
        System.out.println("Unique set using custom comparator: " + uniqueSet);
    }
}

在這個示例中,我們創建了一個名為CustomComparator的自定義比較器,它實現了Comparator<String>接口。在compare方法中,我們定義了如何比較兩個字符串。在這個例子中,我們按字母順序比較字符串,不區分大小寫。

然后,我們使用這個自定義比較器創建了一個新的HashSet實例uniqueSet,并將原始集合set傳遞給它。這將確保uniqueSet中的元素按照自定義比較器的規則進行去重。

運行這個程序,您將看到以下輸出:

Original set: [Apple, banana, Orange, apple]
Unique set using custom comparator: [Apple, banana, Orange]

這表明自定義比較器已成功地去除了重復元素。

0
嘉荫县| 霍邱县| 绩溪县| 开封市| 商南县| 贵州省| 定远县| 沁水县| 盐源县| 福安市| 霍城县| 百色市| 金塔县| 永泰县| 郧西县| 台南县| 内黄县| 淅川县| 新田县| 麟游县| 揭阳市| 板桥市| 抚宁县| 松原市| 鹤岗市| 浦江县| 阿巴嘎旗| 崇义县| 侯马市| 潜山县| 阳曲县| 沙河市| 从江县| 都昌县| 馆陶县| 五华县| 东城区| 枝江市| 子洲县| 泰顺县| 桂平市|