什么叫“語法糖”,就是一種對(duì)編程語言的簡化包裝。用于簡化原本冗長的java語言。但是語法糖僅僅是對(duì)語言的包裝咒锻,并沒有添加更多實(shí)質(zhì)的變化,代碼用不用語法糖最終都會(huì)編譯成相同的.class文件守屉,程序的運(yùn)行效率并沒有變化惑艇。
Kotlin中一切皆對(duì)象,例如boolean值也可以為空
“&&”操作和拇泛,“||”操作或,都是懶運(yùn)算敦捧,若第一個(gè)條件滿足须板,剩下的部分也不會(huì)被計(jì)算碰镜。
String 有雙引號(hào)和三重引號(hào):
雙引號(hào)會(huì)創(chuàng)建一個(gè)轉(zhuǎn)義字符串兢卵,會(huì)轉(zhuǎn)義字符串中的特殊字符
三重引號(hào)創(chuàng)建一個(gè)原始字符串
例如:
區(qū)間:
左包右包使用“..”,例如 1..4 ? 绪颖; 左包右不包使用“util”秽荤,例如1 util 4
倒序: 4 downTo 1
步長任意數(shù)字: 4 downTo 1 step 2
循環(huán):區(qū)間或者for循環(huán)會(huì)被編譯為并不創(chuàng)建迭代器的基于索引的循環(huán)。
想通過索引遍歷數(shù)組或者list柠横,可以這么做:
val array =arrayOf(1,2,3,4)
for (iin array.indices) {
println("index:$i")
}
for ((index,value)in array.withIndex()) { }
相等運(yùn)算符:=== 引用是否一致窃款;==值是否一致
字面量方法:val add ={a: Int, b: Int-> println(a+b)} ? ? ?add(1,1)
內(nèi)部類:
class A{
? ? class B{
? ?}
} 若內(nèi)部類B想要訪問外部類A的私有成員,需要在class前加上inner