Kotlin快速上手
阿新 • • 發佈:2018-12-30
先來總結下Kotlin較與Java的幾點優勢:
100%相容Java
即用Java寫的框架和類庫都可以直接使用,無縫相容語法優化,省略分號,沒有get/set,自動型別推斷等等
凡是有Java開發經驗的很多都明顯感覺到Java語法的囉嗦,而使用kotlin相較於原生Java至少可以減少30%的程式碼量空指標異常自動檢測
即編譯不通過,會有紅色波浪線的提示,無需執行原始碼開源,良好的IDE支援(JetBrains親兒子),可將Java程式碼直接轉換成Kotlin程式碼
- 現已有少數用Kotlin開發的程式,完美執行,如:JetBrains賬號系統,花瓣app,Kotlin中文部落格https://blog.kotliner.cn/
趕快來使用Kotlin吧,你還等什麼?
- 宣告變數和常量
//常量陣列int[][][] arrs = new int[3][2][1];
val arrs = Array(3) { Array(2) { IntArray(1) } }
//空安全變數
var str: String = "hello"
var str1 = "word"
//可為空字串變數
var str2: String? = null
- 建立物件
var artist = Artist(1, "Dylan", "http://www.cnblogs.com/tgyf/")
- 建立函式
//關鍵字 方法名 引數(引數名:引數型別) 返回值型別(?表示可空)
fun getArtict(a: Int, b: Int): Artist? {
return a+b
}
- 實體類的建構函式
constructor(name: String,age: Double?, auctionupset: Double?) {
this.nname = name
this.age=age
}
- 物件欄位的賦值取值
val user = User()
//賦值
user.name = "tutu"
user.age = "23"
//取值
val name = user.name
val age = user.age
- when的使用
when(obj){
1->"1" //是否等於1
in 2..3->"2到3區間內" //是否在2到3的範圍內
is String->"字串型別" //是否是String型別資料
else->{
println("預設情況,預設返回0")
"0"
}
- 繼承和實現
//繼承,有()
class user : father() {
}
//實現,無()
class user : father{
}
- 方法重寫
override fun test() {
println("在實現類中重寫介面方法和重寫父類方法,再fun前加override")
}