麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Java > 正文

kotlin改善java代碼實例分析

2024-07-21 23:03:44
字體:
來源:轉載
供稿:網友

本文主要舉幾個kotlin如何改善java代碼的例子

字符串字面值及模板

字符串字面值

  @Test  fun testStringLiterals(){    val a = """if(a > 1) {     |  return a     |}""".trimMargin()    println(a)    val b = """Foo        Bar""".trimIndent()    println(b)  }

有了字符串字面值,寫sql啥的就不用那么費勁拼接字符串了

字符串模板

 @Test  fun testStringTemplate() {    val name = "hello kotlin"    println("Hello, $name!");    val data = listOf(1,2,3)    println("Hello, ${data[0]}!")  }

這個字符串模板更是強大,相當于內置一個freemarker,而且都不用手工傳遞變量值

for循環中獲取當前index

@Test  fun testForEachIndex(){    val items = listOf("apple", "banana", "kiwifruit")    for (index in items.indices) {      println("item at $index is ${items[index]}")    }  }

在java里頭for each循環要得到index,就得在外面聲明下index,自己統計,太別扭了

data class

 //生成getter/setter,equals,hashcode,toString,copy等  //setter是var變量才有  data class Customer(val name: String, val email: String)  @Test  fun testDataClass(){    val customer = Customer("admin","[email protected]")    println(customer)  }

java總是要聲明getter/setter,好處是可以在IDE查找那些方法有調用getter/setter;

lombok雖然可以自動生成getter/setter,@Data注解也可以生成equal/hashcode方法,但是lombok不方便在IDE查找那些方法有調用getter/setter;kotlin的data class幫你解決這些問題

Null Safety

 @Test  fun testIfNotNull(){    val files = File("Test").listFiles()    println(files?.size) //null  }  @Test  fun testIfNotNullAndElse(){    val files = File("Test").listFiles()    println(files?.size ?: "empty")  }

這個Null Safety太有用了,比起java的三元表達式更簡潔一點,在表達式為true的時候就不用重復寫要返回的內容,只要寫else部分。

Null Safety在流式/鏈式調用的時候更有用

// 如果 `person` 或者 `person.department` 其中之一為空,都不會調用該函數:person?.department?.head = managersPool.getManager()

小結

本文只是舉了kotlin可以改善java代碼的幾個例子,kotlin太強大了,目標是要替代java。其中很多設計可以看到scala的影子,但是黑魔法也比較多,學習曲線稍微有點抖,不過如果不使用太高級的語法,也還OK。

相關參考:https://www.kotlincn.net/docs/reference/


注:相關教程知識閱讀請移步到kotlin教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: a免费看 | 国产精品99久久久久久久女警 | 全黄性性激高免费视频 | 久久久久久久久免费 | 久久久久久久久国产 | 午夜小视频免费观看 | 狠狠婷婷综合久久久久久妖精 | 久久艹艹艹| 羞羞视频免费网站男男 | 欧美高清一级片 | 精品久久久久久久久久久久包黑料 | 欧美午夜网 | xnxx 日本19 | 久久久成人动漫 | 欧美黄色大片免费观看 | 国产91久久久久久 | 护士xxxx| 日韩视频―中文字幕 | 中文区永久区 | 久久久久久艹 | 九九热视频这里只有精品 | japanese xxxxhd| 天天色图片 | 日韩一级片毛片 | 第一区免费在线观看 | 毛片在线免费观看网址 | 亚洲aⅴ免费在线观看 | 精品一区二区三区免费 | 久久久久久艹 | 免费试看av | 亚洲婷婷日日综合婷婷噜噜噜 | 精品一区二区三区免费毛片 | www.99re1.com| 激情大乳女做爰办公室韩国 | 91小视频在线观看免费版高清 | 中文字幕一区在线观看视频 | 黄视频免费在线 | 亚洲欧美日韩精品久久 | 茄子福利视频 | 中文字幕在线永久 | 亚洲va国产va |