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 我們通常需要根據引數個數的不同,寫多個同名的函式實現多型。這裡我們給引數預設值來實現多型。
相關文章
- 蘋果新貴 Swift 之前世今生蘋果Swift
- 馬蜂窩&介面:貴州、內蒙古成國內避暑遊新貴
- 愛馬仕又給蘋果表設計了新錶帶:醜貴醜貴的蘋果
- android kotlin 安全除法AndroidKotlin
- NoSQL 新貴之崛起的 Neo4jSQL
- Android kotlin中配置protobufAndroidKotlin
- Android Kotlin 協程初探AndroidKotlin
- Kotlin:Android世界的SwiftKotlinAndroidSwift
- Android 使用 Kotlin 連線 MQTTAndroidKotlinMQQT
- 極簡Kotlin-For-Android(一)KotlinAndroid
- Android Kotlin協程入門AndroidKotlin
- Kotlin Android 開發小技巧KotlinAndroid
- android kotlin dp 轉換工具AndroidKotlin
- 讓你的程式碼量減少3倍!使用kotlin開發Android(四) kotlin bean背後的祕密KotlinAndroidBean
- Google IO/19 - Kotlin 1.3,更多新特性GoKotlin
- 為什麼說雲端計算運維是新“貴”?運維
- Kubernetes日誌系統新貴Loki-StackLoki
- 極企新品釋出締造辦公路由新貴路由
- kotlin開發經驗談3Kotlin
- Android Pie SDK 與 Kotlin 更合拍AndroidKotlin
- 快速切換至Kotlin for Android模式KotlinAndroid模式
- Kotlin(android)協程中文翻譯KotlinAndroid
- 通過Kotlin構建android工程KotlinAndroid
- 使用Kotlin開發Android應用KotlinAndroid
- Kotlin 概覽——如何看待 Google 將 Kotlin 選為 Android 官方語言?KotlinGoAndroid
- 盤點中國創意產業商業化的新貴們產業
- Kotlin的特點及各版本新特性Kotlin
- 米吃羊火鍋食材超市,新零售餐飲加盟市場新貴!
- 【譯】構建 Android App 的30條寶貴經驗AndroidAPP
- 開發者經驗:為Android開發比iOS貴4倍AndroidiOS
- 重拾Kotlin(3)-陣列、字串模板Kotlin陣列字串
- Android Kotlin 的現狀和未來AndroidKotlin
- Kotlin on Android 開發環境介紹KotlinAndroid開發環境
- Android Studio上Kotlin的入門AndroidKotlin
- 用Kotlin寫Android Gradle指令碼KotlinAndroidGradle指令碼
- Android Studio 3.0更新:Kotlin正式可用AndroidKotlin
- Android開發:Kotlin下配置DataBindingAndroidKotlin
- [Android元件化]Kotlin的路由跳轉Android元件化Kotlin路由