【Kotlin 入門指南】Set 集合

更新於 發佈於 閱讀時間約 6 分鐘
【Kotlin 入門指南】系列文章目錄:https://bit.ly/3t8awwL
Kotlin 線上課程教學影片:https://bit.ly/3qJ5a5Q

Set 集合

Set 集合特性,它沒有特定的排列順序,且內容物件不會重複。使用setOf建立的是不可變集合,這代表一旦建立,內容便無法更動。這種特性在某些情境下非常實用,尤其是當你需要確保程式執行期間集合的元素保持不變時。相對於不可變集合,MutableSet讓我們能夠對集合進行更動。當需要動態操作集合元素時,MutableSet提供了彈性,讓我們新增、刪除或更新集合中的元素。

setOf 不可變的集合範例

在 Kotlin 中的 Set 只能一開始初始資料和事後讀取元素,之後不能進行增、刪、修。

var set = setOf(666,777,888)
println(set)

在這個範例中,我們使用了 setOf 函數來建立一個名為 set 的集合,其中包含了數字 666、777 和 888。值得注意的是,這個集合是不可變的,也就是說,一旦初始化後,不能對其進行增加、刪除或修改操作。

這意味著,當你創建了這個集合後,它的內容是固定的,無法再加入新的元素或者從中移除元素。但你可以隨時讀取其中的元素,例如使用 println(set) 這樣的方式來輸出集合的內容。

不可變的集合在某些情況下非常有用,特別是當你希望在程式執行期間避免對集合進行更改時。它確保了在使用過程中集合的內容保持不變。

MutableSet 可變的集合範例

在 Kotlin 中,使用 MutableSet 集合操作新增、移除、讀取、全部刪除資料:

var mutableSet: MutableSet<Int> = mutableSetOf()

//新增資料
mutableSet.add(666)
mutableSet.add(777)
mutableSet.add(888)
println(mutableSet) // 輸出:[666, 777, 888]

//移除資料
mutableSet.remove(666)
println(mutableSet) // 輸出:[777, 888]

//判斷元素,是否包含在 Set 集合內
println(mutableSet.contains(666)) // 輸出:false

//清除所有資料
mutableSet.clear()
println(mutableSet) // 輸出:[]

在這個範例中,我們建立了一個空的可變集合,指定了元素的類型為整數。 接著,利用 add() 函數向這個可變集合中加入資料。舉例來說,我們新增了數字 666、777 和 888。 若想要從集合中移除特定的元素,可以使用 remove() 函數。這裡我們移除了數字 666。使用 contains() 函數可以檢查特定元素是否存在於集合中。 若需要一次性清除整個集合中的所有資料,可以使用 clear() 函數。

Set 集合常用的方法

- add(element: E):向集合中新增一個元素,返回一個布林值,表示是否新增成功。
- addAll(elements: Collection<E>):向集合中新增一組元素。
- remove(element: E):從集合中刪除一個元素,返回一個布林值,表示是否刪除成功。
- removeAll(elements: Collection<E>):從集合中刪除一組元素。
- retainAll(elements: Collection<E>):從集合中保留與給定集合相同的元素,刪除其他元素。
- clear():清空集合中的所有元素。
- contains(element: E):判斷集合中是否包含給定的元素,返回一個布林值。
- containsAll(elements: Collection<E>):判斷集合中是否包含給定集合中的所有元素,返回一個布林值。
- isEmpty():判斷集合是否為空,返回一個布林值。
- size:返回集合中元素的數量。
- iterator():返回集合的迭代器,可以用於遍歷集合中的元素。
- forEach(action: (E) -> Unit):對集合中的每個元素執行給定的操作。
- filter(predicate: (E) -> Boolean):過濾集合中符合給定條件的元素,返回一個新的集合。
- map(transform: (E) -> R):將集合中的元素轉換為另一種類型,返回一個新的集合。
- toSet():將集合轉換為不可變的 Set。
- toList():將集合轉換為不可變的 List。
- toMutableList():將集合轉換為可變的 List。
- toTypedArray():將集合轉換為數組。


留言
avatar-img
留言分享你的想法!
avatar-img
HKT實驗室
24會員
261內容數
哈囉!歡迎光臨我的沙龍!我是 KT,一位對應用程式開發充滿熱情的開發者。在這個專屬空間,我將與您分享我在應用開發領域的深入學習心得和豐富的實戰經驗。如果您對應用程式開發技術同樣充滿好奇,渴望不斷探索新知,歡迎成為我們的會員,一起在應用程式開發的旅途上,探索更深層次的技術世界,享受學習的樂趣。
HKT實驗室的其他內容
2023/12/15
本文介紹 Kotlin 中的延遲初始化(lateinit)和懶加載(lazy)的使用方法,以及它們之間的差異。這些關鍵字能夠提升程式效能並簡化程式碼撰寫。
Thumbnail
2023/12/15
本文介紹 Kotlin 中的延遲初始化(lateinit)和懶加載(lazy)的使用方法,以及它們之間的差異。這些關鍵字能夠提升程式效能並簡化程式碼撰寫。
Thumbnail
2023/12/11
空值例外是開發中一個常見的風險,特別是在 Kotlin 和 Java 這樣的跨平台開發中更容易出現。藉由合理地運用 Kotlin 的空值安全機制以及對 Java 程式碼的註解,可以有效地降低程式錯誤的風險,提高程式碼的可靠性和穩定性。
Thumbnail
2023/12/11
空值例外是開發中一個常見的風險,特別是在 Kotlin 和 Java 這樣的跨平台開發中更容易出現。藉由合理地運用 Kotlin 的空值安全機制以及對 Java 程式碼的註解,可以有效地降低程式錯誤的風險,提高程式碼的可靠性和穩定性。
Thumbnail
2023/12/11
在 IntelliJ IDEA 建立 Kotlin 專案時,要執行 Java 程式只需將其檔案命名為 .java,並放置在專案的 java 目錄中。這樣就可以順利執行該 Java 程式。
Thumbnail
2023/12/11
在 IntelliJ IDEA 建立 Kotlin 專案時,要執行 Java 程式只需將其檔案命名為 .java,並放置在專案的 java 目錄中。這樣就可以順利執行該 Java 程式。
Thumbnail
看更多
你可能也想看
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
在 Python 中,tuple 與 List有一個關鍵的不同點:tuple 是不可變的,這意味著一旦創建了 tuple,就無法更改其內容。 這與 List的可變性形成了對比,list 可以新增、刪除或修改元素。 元素的意思: 元素:指的是 List 中的每一個獨立的項目或值。
Thumbnail
在 Python 中,tuple 與 List有一個關鍵的不同點:tuple 是不可變的,這意味著一旦創建了 tuple,就無法更改其內容。 這與 List的可變性形成了對比,list 可以新增、刪除或修改元素。 元素的意思: 元素:指的是 List 中的每一個獨立的項目或值。
Thumbnail
Map 集合特性: 採 key、value 方式存放,key 唯一不能重覆。
Thumbnail
Map 集合特性: 採 key、value 方式存放,key 唯一不能重覆。
Thumbnail
Dictionary 字典 和 Set 集合 字典(Dictionary)是 Python 中一個常用的資料結構,用於儲存一組鍵值對(Key-Value pairs)。集合(Set)是 Python 中的一種無序、可變的資料結構,用於存儲多個元素,且集合中的元素是唯一的(不重複)
Thumbnail
Dictionary 字典 和 Set 集合 字典(Dictionary)是 Python 中一個常用的資料結構,用於儲存一組鍵值對(Key-Value pairs)。集合(Set)是 Python 中的一種無序、可變的資料結構,用於存儲多個元素,且集合中的元素是唯一的(不重複)
Thumbnail
題目會給定一組已經規定好的介面interface,要求我們實作HashSet這種資料結構。也就是一般數學和程式語言中所說的"集合"。
Thumbnail
題目會給定一組已經規定好的介面interface,要求我們實作HashSet這種資料結構。也就是一般數學和程式語言中所說的"集合"。
Thumbnail
在 C# 中,List 是一個常見且實用的集合類型,可以儲存一組元素並進行各種操作。本篇教學將帶你深入了解如何操作 List 以及進行降冪排序。我們將使用一系列範例程式碼來說明這些概念。
Thumbnail
在 C# 中,List 是一個常見且實用的集合類型,可以儲存一組元素並進行各種操作。本篇教學將帶你深入了解如何操作 List 以及進行降冪排序。我們將使用一系列範例程式碼來說明這些概念。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News