Kotlin數(shù)組方法

Kotlin數(shù)組方法

序號(hào) 方法 說(shuō)明 備注
01 listOf() 用于創(chuàng)建沒(méi)有元素的空List val list:List<Int> = listOf()創(chuàng)建空數(shù)組時(shí)變量的類型不能省略
02 listOf(vararg elements: T) 用于創(chuàng)建只有一個(gè)元素的List
03 listOf(element: T) 用于創(chuàng)建擁有多個(gè)元素的List
04 arrayListOf() 創(chuàng)建一個(gè)Java中的ArrayList對(duì)象實(shí)例
05 mutableListOf() 創(chuàng)建一個(gè)MutableList的對(duì)象實(shí)例
06 list.toMutableList() 轉(zhuǎn)換成可變的List
07 val iterator = list.iterator() 創(chuàng)建迭代器
08 iterator.hasNext() 檢查序列中是否還有元素
09 iterator.next() 使用next()獲得序列中的下一個(gè)元素
10 list.forEach forEach遍歷List元素 list.forEach(::println)
11 mutableList.add(4) 向集合中添加一個(gè)元素
12 mutableList.add(0,0) 在下標(biāo)為0的位置添加元素0
13 mutableList.remove(1) 刪除元素1
14 mutableList.removeAt(1) 刪除下標(biāo)為1的元素
15 mutableList.removeAll(listOf(3,4)) 刪除子集合
16 mutableList.addAll(listOf(1,2,3)) 添加子集合
17 mutableList.set(0,100) 更新設(shè)置下標(biāo)0的元素值為100
18 mutableList.clear() 清空集合
19 mutableList.toList() 把可變集合轉(zhuǎn)為不可變集合
20 mlist1.retainAll(mlist2) 取兩個(gè)集合交集
21 list.contains(1) 判斷集合中是否有指定元素,有就返回true请琳,否則返回false
22 list.elementAt(6) 查找下標(biāo)對(duì)應(yīng)的元素 如果下標(biāo)越界會(huì)拋IndexOutOfBoundsException
23 list.elementAtOrElse(7,{0}) 查找下標(biāo)對(duì)應(yīng)元素 如果越界會(huì)根據(jù)方法返回默認(rèn)值
24 list.elementAtOrNull(7) 查找下標(biāo)對(duì)應(yīng)元素 如果越界就返回null
25 list.first() 返回集合第1個(gè)元素 如果是空集退个,拋出異常NoSuchElementException
26 emptyList.firstOrNull() 查找下標(biāo)對(duì)應(yīng)元素 如果是空集候齿,返回null
27 list.first({it%2==0}) 返回符合條件的第一個(gè)元素 沒(méi)有則拋異常NoSuchElementException
28 list.firstOrNull({it>100}) 返回符合條件的第一個(gè)元素 沒(méi)有就返回null
29 list.indexOf("c") 返回指定下標(biāo)的元素 沒(méi)有就返回-1
30 list.indexOfFirst({it.contains("x")}) 返回第一個(gè)符合條件的元素下標(biāo) 沒(méi)有就返回-1
31 list.indexOfLast({it.contains("x")}) 返回最后一個(gè)符合條件的元素下標(biāo) 沒(méi)有就返回-1
32 list.last() 返回集合最后一個(gè)元素 空集則拋出異常NoSuchElementException
33 list.last({it==7}) 返回符合條件的最后一個(gè)元素 沒(méi)有就拋NoSuchElementException
34 list.lastOrNull({it>10}) 返回符合條件的最后一個(gè)元素 沒(méi)有則返回null
35 list.lastIndexOf("abc") 返回符合條件的最后一個(gè)元素 沒(méi)有就返回-1
36 list.single() 該集合如果只有1個(gè)元素,則返回該元素寨蹋。否則循捺,拋異常。
37 list.single({it==1}) 返回符合條件的單個(gè)元素 如有沒(méi)有符合的拋異常NoSuchElementException窄赋,或超過(guò)一個(gè)的拋異常IllegalArgumentException。
38 list.singleOrNull({it==7}) 返回符合條件的單個(gè)元素 如有沒(méi)有符合或超過(guò)一個(gè)楼熄,返回null
39 emptyList.any() 如果該集合至少有一個(gè)元素忆绰,返回true,否則返回false孝赫。
40 list.any({it%2==0}) 該集合中至少有一個(gè)元素匹配謂詞函數(shù)參數(shù)
41 list.all({it%2==0}) 當(dāng)且僅當(dāng)該集合中所有元素都滿足條件時(shí)较木,返回true红符;否則都返回false青柄。
42 list.none() 如果該集合沒(méi)有任何元素,返回true预侯,否則返回false致开。
43 list.none({it%2==1}) 當(dāng)且僅當(dāng)集合中所有元素都不滿足條件時(shí)返回true,否則返回false萎馅。
44 list.count() 計(jì)算集合中元素的個(gè)數(shù)
45 list.count({it%2==0}) 計(jì)算集合中滿足條件的元素的個(gè)數(shù)
46 list.reduce({sum, next->sum+next}) 從第一項(xiàng)到最后一項(xiàng)進(jìn)行累計(jì)運(yùn)算
47 list.reduceRight({total, s -> s+total}) 從最后一項(xiàng)到第一項(xiàng)進(jìn)行累計(jì)運(yùn)算
48 list.fold(100,{total, next -> next + total}) 帶初始值的reduce
49 list.foldRight("xyz",{s, pre -> pre + s}) foldRight和reduceRight類似双戳,有初始值。
50 list.forEach { value -> if (value > 7) println(value) } 循環(huán)遍歷元素糜芳,元素是it
51 list.forEachIndexed { index, value -> if (value > 8) println("value of index $index is $value, greater than 8") } 帶index(下標(biāo)) 的元素遍歷
52 list.max() 返回集合中最大的元素飒货。
53 list.min() 返回集合中的最小元素。
54 list.maxBy({it})峭竣、list.maxBy({it*(1-it)}) 獲取函數(shù)映射結(jié)果的最大值
55 list.minBy({it})塘辅、list.minBy({it*(1-it)}) 獲取函數(shù)映射后返回結(jié)果的最小值所對(duì)應(yīng)那個(gè)元素的值,如果沒(méi)有則返回null
56 list.sumBy({it})皆撩、list.sumBy({it*it}) 獲取函數(shù)映射值的總和
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末扣墩,一起剝皮案震驚了整個(gè)濱河市哲银,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌呻惕,老刑警劉巖荆责,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異亚脆,居然都是意外死亡做院,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門型酥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)山憨,“玉大人,你說(shuō)我怎么就攤上這事弥喉∮艟梗” “怎么了?”我有些...
    開封第一講書人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵由境,是天一觀的道長(zhǎng)棚亩。 經(jīng)常有香客問(wèn)我,道長(zhǎng)虏杰,這世上最難降的妖魔是什么讥蟆? 我笑而不...
    開封第一講書人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮纺阔,結(jié)果婚禮上瘸彤,老公的妹妹穿的比我還像新娘。我一直安慰自己笛钝,他們只是感情好质况,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著玻靡,像睡著了一般结榄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上囤捻,一...
    開封第一講書人閱讀 51,165評(píng)論 1 299
  • 那天臼朗,我揣著相機(jī)與錄音,去河邊找鬼蝎土。 笑死视哑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的誊涯。 我是一名探鬼主播挡毅,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼醋拧!你這毒婦竟也來(lái)了慷嗜?” 一聲冷哼從身側(cè)響起淀弹,我...
    開封第一講書人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎庆械,沒(méi)想到半個(gè)月后薇溃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡缭乘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年沐序,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片堕绩。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡策幼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出奴紧,到底是詐尸還是另有隱情特姐,我是刑警寧澤,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布黍氮,位于F島的核電站唐含,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏沫浆。R本人自食惡果不足惜捷枯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望专执。 院中可真熱鬧淮捆,春花似錦、人聲如沸本股。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)痊末。三九已至蚕苇,卻和暖如春哩掺,著一層夾襖步出監(jiān)牢的瞬間凿叠,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工嚼吞, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留盒件,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓舱禽,卻偏偏與公主長(zhǎng)得像炒刁,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子誊稚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容