原文地址: Kotlin 常用語法糖記錄 - Stars-One的雜貨小窩
當使用 Kotlin 程式設計時,有一些常用的函數可以幫助我們簡化程式碼並提高開發效率。
稍微列舉下常用的方法
runCatching 是一個用於處理可能引發異常的程式碼塊的函數。它提供了一種更簡潔和安全的方式來執行可能出現異常的操作。
val result = runCatching {
// 可能引發異常的程式碼邏輯
}
if (result.isSuccess) {
val value = result.getOrNull() // 獲取操作結果(如果沒有異常)
// 處理成功的情況
} else {
val exception = result.exceptionOrNull() // 獲取異常(如果有異常)
// 處理異常的情況
}
let
函數允許您在特定上下文中執行操作,並將結果作為閉包引數傳遞。stringValue?.let { println(it) }
,在 stringValue
不為空的情況下執行操作。apply
函數允許您在物件初始化期間執行一系列操作,並返回該物件自身。val person = Person().apply { name = "John"; age = 25 }
,建立一個 Person
物件,並初始化其屬性。with
函數允許您在特定上下文中執行一系列操作,無需顯式存取上下文物件。with(person) { name = "John"; age = 25 }
,對 person
物件的屬性進行賦值操作。run
函數允許您在特定上下文中執行一系列操作,並返回最後一個表示式的結果。val result = run { val x = 10; val y = 20; x + y }
,執行臨時程式碼塊並將結果賦值給 result
。also
函數允許您在特定上下文中執行操作,並返回上下文物件自身。numbers.also { println("Original list: $it") }.add(4)
,在向 numbers
列表新增元素前列印原始列表。takeIf
函數允許您基於條件判斷是否接收物件。null
。val isEven = number.takeIf { it % 2 == 0 }
,如果 number
是偶數,則返回 number
,否則返回 null
。takeUnless
函數允許您基於條件判斷是否不接收物件。null
;否則返回物件本身。val isOdd = number.takeUnless { it % 2 == 0 }
,如果 number
是奇數,則返回 number
,否則返回 null
。map
函數允許您對集合中的每個元素執行操作,並返回操作結果組成的新集合。val squaredNumbers = numbers.map { it * it }
,將 numbers
列表中的每個元素平方,返回一個新列表。filter
函數允許您基於特定條件篩選集合中的元素,並返回滿足條件的元素組成的新集合。val evenNumbers = numbers.filter { it % 2 == 0 }
,返回 numbers
列表中的所有偶數。fold
函數允許您對集合中的元素進行累積操作,並返回最終的累積結果。val sum = numbers.fold(0) { acc, number -> acc + number }
,對 numbers
列表中的元素求和。下面的則是一些集合的方法
repeat
函數允許您重複執行指定次數的操作。repeat(3) { println("Hello") }
,列印 "Hello" 三次。take
函數允許您從集合中獲取指定數量的元素,並返回一個新的集合。val firstThree = numbers.take(3)
,獲取 numbers
列表的前三個元素。drop
函數允許您跳過集合中的指定數量的元素,並返回一個新的集合。val remaining = numbers.drop(3)
,獲取 numbers
列表中除前三個元素外的所有元素。any
函數允許您檢查集合中是否至少存在一個滿足特定條件的元素。val hasEvenNumber = numbers.any { it % 2 == 0 }
,檢查 numbers
列表中是否存在偶數。all
函數允許您檢查集合中的所有元素是否都滿足特定條件。val allEven = numbers.all { it % 2 == 0 }
,檢查 numbers
列表中的所有元素是否都是偶數。find
函數允許您找到集合中滿足特定條件的第一個元素,並返回該元素。val firstEvenNumber = numbers.find { it % 2 == 0 }
,找到 numbers
列表中的第一個偶數。count
函數允許您計算集合中滿足特定條件的元素個數。val evenCount = numbers.count { it % 2 == 0 }
,計算 numbers
列表中的偶數個數。distinct
函數允許您從集合中去除重複的元素,並返回一個新的集合。val uniqueNumbers = numbers.distinct()
,從 numbers
列表中去除重複的元素。