轉自:
http://www.java265.com/JavaCourse/202206/3749.html
下文筆者講述java中set集合的用法簡介說明,如下所示
Set集合的簡介
set集合用于存盤不重復的資料
它底層是使用map的key進行資料存盤
Set集合的特點
無序: 存取順序不一致 不重復: 可以去除重復 無索引: 沒有帶索引的方法 所以不能使用普通for回圈遍歷 也不能通過索引來獲取元素
Set集合實作類及其特點
HashSet: 無序、不重復、無索引 LinkedHashSet: 有序、不重復、無索引 TreeSet: 排序、不重復、無索引
Set集合的示例
package com.java265.other;
import java.util.HashSet;
import java.util.Set;
public class TestSet {
/**
* java265.com set示例分享
*/
public static void main(String[] args) {
Set<String> set = new HashSet<>();
set.add("小美");
set.add("肖號");
set.add("張明就");
set.add("勺子");
System.out.println(set);
set.remove("肖號");
System.out.println(set);
}
}
-----運行以上代碼,將輸出以下資訊-----
[張明就, 小美, 勺子, 肖號]
[張明就, 小美, 勺子]
Set自定義排序
方式一
在自定義類實作Comparable介面
并重寫里面的compareTo方法
設定比較規則
//改變的第一個地方:實作Comparable類
public class User implements Comparable<User> {
//改變的第二個地方:重寫Comparable類中的compareTo方法
@Override
public int compareTo(User o) {
return this.age-o.age;
}
}
方式二: 集合自帶比較器物件進行規則定義
Set<User> p = new TreeSet<>(new Comparator<User>() {
@Override
public int compare(User o1, User o2) {
return o1.getAge()-o2.getAge();
}
});
Set<User> p = new TreeSet<>((o1, o2) -> o1.getAge()-o2.getAge());
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/492416.html
標籤:Java
上一篇:01-繼承和抽象類
