關於HashSet的各種使用方法總結


1,HashSet是set接口的實現類,也是我們最常用的set集合
儲存的是無序,唯一的對象
由於是無序的所以每組數據都沒有索引,很多list可用的方法他都沒有
凡是需要通過索引來進行操作的方法都沒有
所以也不能使用普通for循環來進行遍歷,只有加強型for和迭代器兩種遍歷方法

例如:
get(i);
set(int index,Object o);
remove(int index);
等需要用索引來操作的方法都沒有;

2.HashSet的各種方法:
增加
add(null);
    
刪除
remove(news);
    
對比查找
contains(news);
    
清空集合
clear();
    
獲取長度
size();

示例:

public class NewsHashSet {
public static void main(String[] args) {
    News news = new News(1, "北京終於放晴了!", "新聞社");
    News news2 = new News(2, "香港回歸紀念日", "人民新聞");
    News news3 = new News(3, "假奶粉事件曝光", "人民新聞網");
    
    //創建HashSet集合,儲存無序,唯一的數據
    //HashSet是是使用equals來進行對象對比,確定數據是唯一的
    //如果兩個數據的對象是一致的,那么HashSet將會把這兩個合並,只儲存一個空間
    HashSet<News> set = new HashSet<News>();
    set.add(news);
    set.add(news2);
    set.add(news3);
    
    //由於HashSet儲存數據都是無序的,所以不能用get(i);來獲取具體對象
    //所以我們必須通過遍歷來得到HashSet的各個數據,由於是沒有索引的
    //所以不能使用普通類型的for來遍歷它
    //HashSet只能通過增強型for和迭代器來遍歷它
    
    //增強型for
    for(News n : set){
        System.out.println(n.getID()+"\t"+n.getLitter()+"\t"+n.getAuthor());
    }
    System.out.println("*****************************************");
    //迭代器
    Iterator<News> it = set.iterator();
    while (it.hasNext()) {
        News n = it.next();
        System.out.println(n.getID()+"\t"+n.getLitter()+"\t"+n.getAuthor());
    }
    
    //set的各種方法
    //set增加
    set.add(null);
    
    //刪除
    set.remove(news);
    
    //對比查找
    set.contains(news);
    
    //清空集合
    set.clear();
    
    //獲取長度
    set.size();
    
}
}

---------------------
作者:jinqianwang
來源:CSDN
原文:https://blog.csdn.net/jinqianwang/article/details/80030060
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM