Kotlin 基礎(chǔ)教程之?dāng)?shù)組容器
Kotlin 基礎(chǔ)教程之?dāng)?shù)組容器
Arrays
Kotlin 標(biāo)準(zhǔn)庫(kù)提供了arrayOf()創(chuàng)建數(shù)組, **ArrayOf創(chuàng)建特定類(lèi)型數(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) studentArray[0] = Student("james")
和Java不一樣,Kotlin 的數(shù)組是容器類(lèi), 提供了 ByteArray, CharArray, ShortArray, IntArray, LongArray, BooleanArray, FloatArray, and DoubleArray。
Lists
List是有序容器,Kotlin 標(biāo)準(zhǔn)庫(kù)通過(guò)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是只讀的實(shí)例,要修改這些list,需要進(jìn)行類(lèi)型轉(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是沒(méi)有重復(fù)項(xiàng)的容器, 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)
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
java如何動(dòng)態(tài)的處理接口的返回?cái)?shù)據(jù)
本文主要介紹了java如何動(dòng)態(tài)的處理接口的返回?cái)?shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01java之super關(guān)鍵字用法實(shí)例解析
這篇文章主要介紹了java之super關(guān)鍵字用法實(shí)例解析,較為詳細(xì)的分析了super關(guān)鍵字的用法及內(nèi)存分布,需要的朋友可以參考下2014-09-09Spring注解開(kāi)發(fā)@Bean和@ComponentScan使用案例
這篇文章主要介紹了Spring注解開(kāi)發(fā)@Bean和@ComponentScan使用案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09使用Java實(shí)現(xiàn)6種常見(jiàn)負(fù)載均衡算法
Java負(fù)載均衡算法也是分布式系統(tǒng)中的重要組成部分,用于將來(lái)自客戶(hù)端的請(qǐng)求分配到不同的后端服務(wù)器上,本文將介紹常見(jiàn)的Java負(fù)載均衡算法,輪詢(xún)法、加權(quán)隨機(jī)法……一次性讓你了解?6?種常見(jiàn)負(fù)載均衡算法2023-06-06java實(shí)現(xiàn)cassandra高級(jí)操作之分頁(yè)實(shí)例(有項(xiàng)目具體需求)
這篇文章主要介紹了java實(shí)現(xiàn)cassandra高級(jí)操作之分頁(yè)實(shí)例(有項(xiàng)目具體需求),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-04-04springboot2如何禁用自帶tomcat的session功能
這篇文章主要介紹了springboot2如何禁用自帶tomcat的session功能,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Java利用反射自動(dòng)封裝成實(shí)體對(duì)象的方法
這篇文章主要介紹了Java利用反射自動(dòng)封裝成實(shí)體對(duì)象的方法,可實(shí)現(xiàn)自動(dòng)封裝成bean對(duì)象功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01Mybatisplus實(shí)現(xiàn)JSON處理器的示例代碼
Mybatisplusjson是基于Mybatisplus開(kāi)發(fā)的一個(gè)json工具庫(kù),本文主要介紹了Mybatisplus實(shí)現(xiàn)JSON處理器的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03Maven?pom.xml文件獲取當(dāng)前時(shí)間戳方式
這篇文章主要介紹了Maven?pom.xml文件獲取當(dāng)前時(shí)間戳方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12