Kotlin展開運算子

2021-09-02 02:03:51 字數 373 閱讀 5515

當你需要傳遞乙個陣列引數時,在kotlin中需要你解包陣列,以便每個陣列元素在函式中能作為單獨的引數來呼叫。我們使用*號來展開這個陣列。

fun main() 

>>>[one, two, three, four]

下面這為錯誤的**:

fun main() 

>>>type mismatch: inferred type is listbut arraywas expected

錯誤說了list為乙個可變陣列長度,他引數上使用vararg修飾,代表乙個可變的列表,說明了展開運算子只能展開陣列資料,不能展開乙個可變長的列表。

可以理解為展開運算子遍歷了一遍該陣列。

展開運算子

複製陣列 錯誤方法 arr2 arr1 console.log arr1 arr2 true 傳統方法 let arr3 arr1.concat console.log arr1 arr3 false 新方法 let arr1 1,2,3 let arr2 4,5,6,arr1 console.lo...

展開運算子 object

如果只說展開運算子,可能小夥伴會一臉懵逼,你在說啥啊?但是如果換成另一種說法 object 那麼小夥伴可能恍然大悟 噢 你說 es6 的這個表示式啊!函式呼叫 myfunction iterableobj 字面量陣列構造或字串 iterableobj,4 hello 6 構造字面量物件時,進行轉殖或...

展開運算子 的使用

1.展開陣列 let arr1 1,2,3 let arr2 4,5,6 console.log arr1 1 2 3 合併陣列 let arr3 arr1,arr2 console.log arr3 1,2,3,4,5,6 2.不能直接展開物件,需在花括號包裹下 let obj console.l...