Android 新貴 kotlin (3)
圖左側為 kotlin 的程式碼,而右側為 java 的程式碼,如果您是有 Java 背景的,可以對比來看一看。
kotlin 和老大的關係非同一般,這是 我們可以通過選中程式碼,然後右鍵選擇,來將 java 的程式碼轉換為 kotlin 的程式碼。
轉後的程式碼,簡單明瞭,這也是他能挖老大牆角的原因。
我們通常會通過分隔符,這裡是空格,將字串拆分為集合,然後根據需要獲取我們想要的資訊,這種場景想必大家都遇到過。下面的處理方式,大氣點叫解決方案。大家可能再熟悉不過了。
我們可以定義資料型別,這樣相對陣列更直接和容易理解。
我們可以 kotlin 提供一種用於資料結構的類 叫做 data class。
上面的程式碼對於 java developer 也是再熟悉不過了。
在 java 中我們通過 setter 和 getter 將私有變數取值和賦值進行控制。
這裡 set 無需帶屬性名,field 代表欄位。今天分享主要讓大家學會如何用 kotlin way 來寫程式碼
對於很多公用的屬性,我們希望計算一次然後多次使用,再次使用時無需計算,例如我們終端裝置的資訊,在這裡只需要獲取一次就夠了,我們就可以用到 kotlin 的代理類來實現。 代理類通過 by 這個關鍵字來實現。這裡用到了 lazy 表示只有在第一次訪問才會計算。
上面我們可以通過代理來實現觀察者模式。
下圖程式碼似成相識,特別你有 java 背景,會倍感親切。我們看一看如何用 kotlin way 來實現。我們通常會在專案中寫一些工具類來提供一些通用的方法。看這裡的 StringUtil 提供一些對字串操作的方法。
大家多數都是從 java 轉而學習 kotlin 。這裡值得注意的是 kotlin 支援多正規化程式設計的語言,我們需要用 kotlin 的方式來寫程式,如果我們用 kotlin 來寫程式碼,思維還是 java 方式。那就失去用 kotlin 的意義了。這裡我們 object 來代替高成本的 class。
看看這些程式碼,我們就又回到了 java。
其實在 kotlin 我們很容易就可以擴充套件我們基本資料型別的方法。來擴充套件其一些方法。
多型在 java 我們通常需要根據引數個數的不同,寫多個同名的函式實現多型。這裡我們給引數預設值來實現多型。
相關文章
- android kotlin 安全除法AndroidKotlin
- Android kotlin中配置protobufAndroidKotlin
- Android Kotlin 協程初探AndroidKotlin
- 極簡Kotlin-For-Android(一)KotlinAndroid
- Android 使用 Kotlin 連線 MQTTAndroidKotlinMQQT
- android kotlin dp 轉換工具AndroidKotlin
- Android Kotlin協程入門AndroidKotlin
- 快速切換至Kotlin for Android模式KotlinAndroid模式
- Android Pie SDK 與 Kotlin 更合拍AndroidKotlin
- Android Studio 3.0更新:Kotlin正式可用AndroidKotlin
- Android Studio: Kotlin使用DataBinding異常AndroidKotlin
- Kotlin(android)協程中文翻譯KotlinAndroid
- Android Studio上Kotlin的入門AndroidKotlin
- singlelnstance模式singlelnstance模式kotlin.Android模式KotlinAndroid
- 【翻譯】ANDROID KTX – 使用Kotlin進行Android開發AndroidKotlin
- 馬蜂窩&介面:貴州、內蒙古成國內避暑遊新貴
- Kotlin on Android 開發環境介紹KotlinAndroid開發環境
- Android Kotlin 的現狀和未來AndroidKotlin
- 在 Android 開發中使用 Kotlin 協程 (一) -- 初識 Kotlin 協程AndroidKotlin
- Android版kotlin協程入門(四):kotlin協程開發實戰AndroidKotlin
- 當 Kotlin 遇上 Android KTX,豈止絲滑?KotlinAndroid
- Android開發中的Kotlin Coroutine VS RxJavaAndroidKotlinRxJava
- 使用Kotlin高效地開發Android App(二)KotlinAndroidAPP
- 使用Kotlin高效地開發Android App(四)KotlinAndroidAPP
- 使用Kotlin高效地開發Android App(三)KotlinAndroidAPP
- Android開發框架Collection-kotlin(更新篇)Android框架Kotlin
- 使用Kotlin高效地開發Android App(一)KotlinAndroidAPP
- 從crash看kotlin-android-extensions工作原理KotlinAndroid
- Android入門教程 | Kotlin協程入門AndroidKotlin
- Blog-05-《一週快速上手Kotlin For Android》-KotlinAndroid
- 開發Android應用用Kotlin還是Java?AndroidKotlinJava
- Kotlin-first - 谷歌宣佈Kotlin成為Android開發首選語言Kotlin谷歌Android
- Android版kotlin協程入門(三):kotlin協程的異常處理AndroidKotlin
- [Android]元件化的Kotlin適配–迄今最強的Kotlin踩坑文章(5.24更新)Android元件化Kotlin
- Google IO/19 - Kotlin 1.3,更多新特性GoKotlin
- Android 騰訊Bugly熱更新接入(Kotlin語言)AndroidKotlin
- 【Android】在Kotlin中更優雅地使用LiveDataAndroidKotlinLiveData
- Kotlin對決Java:Android開發的選擇?KotlinJavaAndroid