日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hasset java_java HashSet的使用

發布時間:2025/3/11 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hasset java_java HashSet的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天在寫代碼時想要使用HashSet,由于之前并不了解,就在網上查了一下原理及使用方法。

HashSet原理

該類實現了Set接口,HashSet中不允許元素重復,不保證集合中元素的順序,元素可為null,但最多只能一個。對于 HashSet 而言,HashSet繼承自AbstractSet,它是基于 HashMap 實現的,HashSet 底層使用HashMap來保存所有元素。因此HashSet的實現比較簡單,相關 HashSet 的操作,基本上都是直接調用底層 HashMap 的相關方法來完成。

常用方法

構造方法:

默認構造器:

publicHashSet() {

map= new HashMap<>();

}

將傳入的集合添加到HashSet的構造器

public HashSet(Collection< ? extends E>c) {

map= new HashMap<>(Math.max((int) (c.size()/.75f) + 1, 16));

addAll(c);

}

明確初始容量和裝載因子的構造器

public HashSet(int initialCapacity, floatloadFactor) {

map= new HashMap<>(initialCapacity, loadFactor)

}

僅明確初始容量的構造器(裝載因子默認0.75

public HashSet(intinitialCapacity) {

map= new HashMap<>(initialCapacity);

}

API中幾個常用方法:

size() :返回值為int,返回此 set 中的元素的數量(set 的容量)。

isEmpty():返回值為boolean, 如果此 set 不包含任何元素,則返回 true。

add(E?e):返回值為boolean,如果此 set 中尚未包含指定元素,則添加指定元素。

iterator():返回值為Iterator, 返回對此 set 中元素進行迭代的迭代器。

remove(Object?o):返回值為boolean,如果指定元素存在于此 set 中,則將其移除。

contains(Object?o):返回值為boolean,如果此 set 包含指定元素,則返回 true。

clear():無返回值, 從此 set 中移除所有元素。

clone():返回值為Object,返回此HashSet的淺表副本,而并沒有復制元素本身。

HashSet的簡單使用

創建:

packagecom.cmq.common;importjava.util.ArrayList;importjava.util.HashSet;importjava.util.List;importjava.util.Set;importcom.cmq.entity.Shoes;importcom.cmq.entity.Manager;/***@authorchenmeiqi

*@version2020年2月10日 下午3:33:08

*@公共屬性類*/

public classConstants {//使用List模擬數據庫,創建管理員List對象//public static List mgrlist = new ArrayList<>();

public static Set hashsetShoes= new HashSet<>();

}

添加:

if (idyz(Integer.parseInt(s[0]))) {if (Util.isEmpty(s[1])) {if (s[6].equals("1") || s[6].equals("2") || s[6].equals("3") || s[6].equals("4")) {

shoe.setId(Integer.parseInt(s[0]));

shoe.setName(s[1]);

shoe.setSign(Integer.parseInt(s[6]));

shoe.setImage(s[2]);

shoe.setPrice(Double.parseDouble(s[3]));

shoe.setPub_address(s[4]);

shoe.setPub_date(Util.StringToDate(s[5]));//保存set集合中

Constants.hashsetShoes.add(book);

}else{

System.out.println("*******類別輸入有誤!****");

}

}else{

System.out.println("*******名稱不能為空!*****");

}

}

刪除:

for(Shoesshoes:Constants.hashsetShoes) {if(shoes.getId() == id_input) {//從hashsetShoes中查詢出id為傳入的id的用戶

Constants.hashsetBook.remove(shoes);//刪除該商品

break;

}

}

總結

以上是生活随笔為你收集整理的hasset java_java HashSet的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。