Kotlin 數(shù)組容器

Arrays

Kotlin 標準庫提供了arrayOf()創(chuàng)建數(shù)組, **ArrayOf創(chuàng)建特定類型數(shù)組

val array = arrayOf(1, 2, 3)
val countries = arrayOf("UK", "Germany", "Italy")
val numbers = intArrayOf(10, 20, 30)
val array1 = Array(10, { k -> k * k })
val longArray = emptyArray<Long>()
val studentArray = Array<Student>(2){Student()}
studentArray[0] = Student("james")

和Java不一樣,Kotlin 的數(shù)組是容器類, 提供了 ByteArray, CharArray, ShortArray, IntArray, LongArray, BooleanArray, FloatArray, and DoubleArray。

Lists

List是有序容器,Kotlin 標準庫通過listOf()創(chuàng)建list

val intList: List<Int> = listOf(20, 5, 10)
val emptyList: List<String> = emptyList<String>()
val nonNulls: List<String> = listOfNotNull<String>(null, "a", "b", "c")

val doubleList: ArrayList<Double> = arrayListOf(84.88, 100.25, 999.99)

其中银伟,intList, emptyList, nonNulls是只讀的實例,要修改這些list绘搞,需要進行類型轉(zhuǎn)換

(intList as AbstractList<Int>).set(0, 30)
(nonNulls as java.util.ArrayList).addAll(arrayOf("x", "y"))

Maps

Map是<key, value>容器彤避, Kotlin提供mapOf創(chuàng)建map

val map = mapOf("a" to 1, "b" to 2, "c" to 3)
val value = map.get(b)

val states: MutableMap<String, String>= mutableMapOf("AL" to "Alabama", 
        "AK" to "Alaska", "AZ" to "Arizona")

val customers: java.util.HashMap<Int, Customer> = hashMapOf(1 to
        Customer("Dina", "Kreps", 1), 2 to Customer("Andy", "Smith", 2))

val linkedHashMap: java.util.LinkedHashMap<String, String> =
        linkedMapOf("red" to "#FF0000","azure" to "#F0FFFF","white" to "#FFFFFF")

val sortedMap: java.util.SortedMap<Int, String> = sortedMapOf(4 to "d",
        1 to "a", 3 to "c", 2 to "b")

Sets

Set是沒有重復(fù)項的容器, Kotlin提供setOf創(chuàng)建Set

val intSet: Set<Int> = setOf(1, 21, 21, 2, 6, 3, 2) //1,21,2,6,3
val hashSet: java.util.HashSet<Book> = hashSetOf(
        Book("Jules Verne", "Around the World in 80 Days Paperback", 2014, "978-1503215153"),
        Book("Jules Verne", "Around the World in 80 Days Paperback", 2014, "978-1503215153"))
val sortedIntegers: java.util.TreeSet<Int> = sortedSetOf(11, 0, 9, 11, 9, 8)

參考*
《Programming Kotlin》Stephen Samuel 夯辖,Stefan Bocutiu
《Kotlin in Action》Dmitry Jemerov琉预,Svetlana Isakova

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市蒿褂,隨后出現(xiàn)的幾起案子圆米,更是在濱河造成了極大的恐慌卒暂,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娄帖,死亡現(xiàn)場離奇詭異也祠,居然都是意外死亡,警方通過查閱死者的電腦和手機近速,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門诈嘿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人削葱,你說我怎么就攤上這事仔粥「吮” “怎么了顶籽?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵垮庐,是天一觀的道長。 經(jīng)常有香客問我首繁,道長作郭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任弦疮,我火速辦了婚禮夹攒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘挂捅。我一直安慰自己,他們只是感情好堂湖,可當(dāng)我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布闲先。 她就那樣靜靜地躺著,像睡著了一般无蜂。 火紅的嫁衣襯著肌膚如雪伺糠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天斥季,我揣著相機與錄音训桶,去河邊找鬼。 笑死酣倾,一個胖子當(dāng)著我的面吹牛舵揭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播躁锡,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼午绳,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了映之?” 一聲冷哼從身側(cè)響起拦焚,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤蜡坊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后赎败,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體秕衙,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年僵刮,在試婚紗的時候發(fā)現(xiàn)自己被綠了据忘。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡妓笙,死狀恐怖若河,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情寞宫,我是刑警寧澤萧福,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站辈赋,受9級特大地震影響鲫忍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜钥屈,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一悟民、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧篷就,春花似錦射亏、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至未辆,卻和暖如春窟绷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背咐柜。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工兼蜈, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人拙友。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓为狸,卻偏偏與公主長得像,于是被迫代替她去往敵國和親遗契。 傳聞我的和親對象是個殘疾皇子钥平,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,685評論 2 360

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