8 1集合類(Set,超級for)

2021-07-27 06:08:20 字數 1636 閱讀 8871

hashset的常用方法:

//例項化hashset

set set = new hashset();

//新增元素

set.add(123);

set.add(123);

set.add("ss");

set.add("ss");

//移除元素,只能是移除指定資料,不能從下標移除,因為hashset是無序的,

set.remove("ss");

//獲取元素個數

set.size();

hashset也可也使用泛型(集合類都可以使用泛型)

//泛型

setset = new hashset();

hashset中沒有get()方法,那要怎麼樣獲取和遍歷陣列元素呢?

可以使用iterator來獲取和遍歷元素,先看iterator

只有3個方法:hasnext():判斷是否還有元素,有酒返回true。

看圖就明白iterator執行過程

所有的集合類都有這樣的乙個迭代器。

這樣就可獲取和遍歷hashset中的元素了:看**

//泛型

setset = new hashset();

//新增元素

set.add(123);

set.add(123);

set.add(123);

set.add(456);

set.add(789);

set.add(999);

//遍歷元素

//hashset中有個iteator()方法可以返回乙個迭代器

//迭代器也可以是泛型的

iteratort = set.iterator();

for(;t.hasnext();)

這裡輸出的是:

789999

456123

這裡的值怎麼少了幾個,我add了三個123,怎麼只輸出了乙個123?還有順序也不一樣?

因為hashset存放的元素不能重複,並且是無序的

這個for迴圈是基於iterator原理的

非常好用,可以遍歷陣列或集合裡面的元素

例:for(資料型別 型別名稱:陣列物件)

//泛型

setset = new hashset();

//新增元素

set.add(123);

set.add(123);

set.add(123);

set.add(456);

set.add(789);

set.add(999);

//超級for迴圈

for(int i:set)

5 03 集合框架 set集合

一 set集合概述 乙個不包含重複元素的 collection。更確切地講,set 不包含滿足e1.equals e2 的元素對e1和e2,並且最多包含乙個 null 元素。正如其名稱所暗示的,此介面模仿了數學上的 set 抽象。在所有構造方法以及 add equals 和 hashcode 方法的...

08 集合對映 set

實際上,set這種集合對映我們在前面已經學習關聯關係對映時已經用過了,實體類 實體類都在在資料庫中有對應的表 中有一對多或者多對多的關係,並且我們可以通過某一側訪問到另一側,就是通過在類中設定 set集合並配置set對映來實現的。在hibernate配置中有兩種資料型別,一種是值型別,另一種是實體型...

集合4 集合 Collection介面 Set介面

儲存無序的 不可重複的資料 三種實現類 注 1.set介面中沒有額外定義新的方法,使用的都是collection中宣告過的方法 2.向set中新增的資料,其所在類一定要重寫hashcode 和equals 且重寫的hashcode 和equals 盡可能保持一致 相等的物件具有相等的雜湊碼 以has...