亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

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
印江| 玛多县| 肥东县| 庆元县| 蓝山县| 上蔡县| 邵武市| 临西县| 金沙县| 濮阳市| 崇阳县| 长白| 西畴县| 洛阳市| 会理县| 东港市| 云安县| 苗栗县| 阜城县| 即墨市| 交口县| 莒南县| 天柱县| 奎屯市| 焦作市| 齐河县| 永德县| 河东区| 鲁甸县| 达孜县| 玉林市| 垣曲县| 西乌珠穆沁旗| 新巴尔虎右旗| 利津县| 漠河县| 宁强县| 宜春市| 西丰县| 鄯善县| 南丹县|