kotlin學(xué)習(xí)筆記

  • $
println("itemB:$itemB") 
//字符串模板 
var userInfo = "name:${user.name}, age:$age"

  • 表示對象可能為空
//在變量類型后面加上問號,代表該變量是可空變量  
var name: String? = "zhangsan" 
/**
 * 如果str不能轉(zhuǎn)為Int類型,則返回null
 */
fun parseInt(str: String): Int? { 
  // (代碼略)
}
b?.length //如果 b非空迎捺,就返回 b.length ,否則返回 null查排,這個表達(dá)式的類型是 Int? 凳枝。
  • ?:
//如果r非空,我使用它跋核;否則使?某個非空的值 x ”:
 val l = b?.length ?: -1 
  • !!
//返回一個非空的 b 值 或者如果 b 為空岖瑰,就會拋出一個 NPE 異常
val l = b!!.length
  • ==,===

==判斷值是否相等砂代,===判斷值及引用是否完全相等蹋订。

  • ..
    Kotlin中有區(qū)間的概念,區(qū)間表達(dá)式由具有操作符形式 .. 的 rangeTo 函數(shù)輔以 in 和 !in 形成刻伊。 區(qū)間是為任何可比較類型定義的露戒,但對于整型原生類型椒功,它有一個優(yōu)化的實現(xiàn)。
if (i in 1..10) { // 等同于 1 <= i && i <= 10
    println(i)
}
  • _
data class Book(var id: Int, var name: String)
val book = Book(1, "英語")
val (id, _) = book
  • ::
    獲取類的屬性智什,方法
  • @
//1动漾、限定this的類型
class User {
    inner class State{
        fun getUser(): User{
            //返回User
            return this@User
        }
        fun getState(): State{
            //返回State
            return this@State
        }
    }
}
//2、作為標(biāo)簽
loop@ for (itemA in arraysA) {
     var i : Int = 0
      for (itemB in arraysB) {
         i++
         if (itemB > 2) {
             break@loop
         }
         println("itemB:$itemB")
     }
}
  • 2018.11.21更新(平時編碼注意點)

(1)優(yōu)先使用不可變(而不是可變)數(shù)據(jù)撩鹿。初始化后未修改的局部變量與屬性谦炬,總是將其聲明為 val 而不是 var 悦屏〗诼伲總是使用不可變集合接口( Collection , List , Set , Map )來聲明無需改變的集合。使用工廠函數(shù)創(chuàng)建集合實例時础爬,盡可能選用返回不可變集合類型的函數(shù):

// 不良:使用可變集合類型作為無需改變的值
fun validateValue(actualValue: String, allowedValues: HashSet<String>) { ...... }
// 良好:使用不可變集合類型
fun validateValue(actualValue: String, allowedValues: Set<String>) { ...... }
// 不良:arrayListOf() 返回 ArrayList<T>甫贯,這是一個可變集合類型
val allowedValues = arrayListOf("a", "b", "c")
// 良好:listOf() 返回 List<T>
val allowedValues = listOf("a", "b", "c")

(2)使用 until 函數(shù)在一個區(qū)間上循環(huán):

for (1 in 0 until n){......}

(3)拓展函數(shù)also with let run apply的區(qū)別
參考 (https://blog.csdn.net/ljd2038/article/details/79576091)

參考文獻(xiàn):
https://blog.csdn.net/zxc123e/article/details/73368781

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市看蚜,隨后出現(xiàn)的幾起案子叫搁,更是在濱河造成了極大的恐慌,老刑警劉巖供炎,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件渴逻,死亡現(xiàn)場離奇詭異,居然都是意外死亡音诫,警方通過查閱死者的電腦和手機惨奕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來竭钝,“玉大人梨撞,你說我怎么就攤上這事∠愎蓿” “怎么了卧波?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長庇茫。 經(jīng)常有香客問我港粱,道長,這世上最難降的妖魔是什么旦签? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任查坪,我火速辦了婚禮,結(jié)果婚禮上顷霹,老公的妹妹穿的比我還像新娘咪惠。我一直安慰自己,他們只是感情好淋淀,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布遥昧。 她就那樣靜靜地躺著覆醇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪炭臭。 梳的紋絲不亂的頭發(fā)上永脓,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天,我揣著相機與錄音鞋仍,去河邊找鬼常摧。 笑死,一個胖子當(dāng)著我的面吹牛威创,可吹牛的內(nèi)容都是我干的落午。 我是一名探鬼主播,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼肚豺,長吁一口氣:“原來是場噩夢啊……” “哼溃斋!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起吸申,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤梗劫,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后截碴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體梳侨,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年日丹,在試婚紗的時候發(fā)現(xiàn)自己被綠了走哺。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡聚凹,死狀恐怖割坠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情妒牙,我是刑警寧澤彼哼,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站湘今,受9級特大地震影響敢朱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜摩瞎,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一拴签、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧旗们,春花似錦蚓哩、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽喜颁。三九已至,卻和暖如春曹阔,著一層夾襖步出監(jiān)牢的瞬間半开,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工赃份, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留寂拆,地道東北人。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓抓韩,卻偏偏與公主長得像纠永,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子园蝠,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354

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

  • :符號渺蒿、 用于類名后表示繼承,用于變量后限定變量類型彪薛。 $符號、 字符串模版符號 println("item==$...
    122604閱讀 954評論 0 1
  • 前言 人生苦多怠蹂,快來 Kotlin 善延,快速學(xué)習(xí)Kotlin! 什么是Kotlin城侧? Kotlin 是種靜態(tài)類型編程...
    任半生囂狂閱讀 26,208評論 9 118
  • Kotlin系統(tǒng)化學(xué)習(xí)-20170823文章中有大部分內(nèi)容是借鑒《Kotlin實戰(zhàn)》中文版易遣,特此注明一下。 Kot...
    ClAndEllen閱讀 1,662評論 2 10
  • 寫在開頭:本人打算開始寫一個Kotlin系列的教程嫌佑,一是使自己記憶和理解的更加深刻豆茫,二是可以分享給同樣想學(xué)習(xí)Kot...
    胡奚冰閱讀 3,330評論 1 17
  • 自從見過魔鬼的婀娜 不再留戀仙女的溫和 鼓起勇氣跟魔鬼生活 魔鬼家是五顏六色的方格 有的方格擺餐桌 桌子上面有吃有...
    煜煙閱讀 237評論 0 0