1.用val或var聲明變量喜最,指明它們是不可變的或可變的
//定義函數(shù)
fun getVar():String{
return "var"
}
//賦值
val x =1
var s= getVar()
2.基本數(shù)據(jù)類型
//Boolean
val aBoolear: Boolean=true
val anotherBoolear: Boolean=false
//Int
val anInt: Int =8
val anotherInt: Int =0xFF
val moreInt: Int =0b00000011
val maxInt : Int=Int.MAX_VALUE
val minInt: Int=Int.MIN_VALUE
//Float 浮點
val aFloat: Float=2.0F
val anotherFloat: Float =1E3F
//Double 雙精度
val aDouble: Double =3.0
//Short
val aShort: Short=127
//用整型變量給Byte賦值 -128~~127
val byte :Byte=127
//字符
val aChar:Char='0'
//字符串 ==相當(dāng)于java中a.equals(b),正確為true ,否則 false ===相當(dāng)于java中的==
val string :String ="hjk"
val fromChars:String =String(charArrayOf('h','j','k')) //把字符拼接成字符串
//特殊列子
val arg1:Int =0
val arg2:Int =1
//輸出:Hello"Trump"
val sayString:String="Hello \"Trump\""
//輸出:$10000
val salary:Int=1000
fun main(args: Array<String>) {
println(string)
println(fromChars)
println(string==fromChars)
println(string===fromChars)
//java寫法
println("" + arg1 + "+" + arg2 + "=" +(arg1+arg2))
//kotlin寫法
println("$arg1+$arg2 =${arg1+arg2}")
println(sayString)
println("$$salary")
//輸出:$salary 俐末,注意請使用\
println("\$salary")
//超級字符類型
val rawString:String="""
\t
\n
"""
println(rawString)
println(rawString.length)
}
3:kotlin針對null指針問題料按。完美解決
//1.kotlin 不允許返回null
fun getName():String{
return "eraewr"
}
//2.如果需要返回null。則【類型后添加】卓箫?號
fun getNames():String?{
return null
}
fun main(args: Array<String>) {
//1
println(getName().length)
//2
val name= getNames();
println(name?.length)
//也可以這么寫 ==2 ,代表如果為null载矿,直接return,否則....將getNames的值賦值給names,names的類型是一個不可空的Stringva
// val names:String= getNames()?:return
// println(names.length)
//3 !!代表我已經(jīng)知道肯定不為空烹卒,讓它安全執(zhí)行
val value:String?="eraerae"
println(value!!.length)
}
4:類
//妹子繼承人
class 妹子 (性格:String ,長相:String,聲音:String):人(性格,長相,聲音)
class 帥哥 constructor(性格:String ,長相:String,聲音:String):人(性格,長相,聲音)
//因為類默認是final類型的闷盔。所有需要open去打開 父類
open class 人(var 性格:String ,var 長相:String,var 聲音:String){
init { //在初始化的時候,加載
//${this.javaClass.simpleName} 獲取子類的類名
println("new 了一個${this.javaClass.simpleName}:她性格:$性格旅急,長相:$長相逢勾,聲音:$聲音")
}
}
//constructor可以省略
class Bing constructor(var s:Int,var d:String){
init {
println("s:$s d:$d")
}
}
fun main(args: Array<String>) {
val 我喜歡妹子:妹子=妹子("溫柔","甜美","動聽")
val 崇拜帥哥:帥哥=帥哥("冷酷","帥氣","深沉")
val Bing:Bing=Bing(18,"erewa")
}
封神:kotlin系列將繼續(xù)更新。藐吮。溺拱。。包含kotlin所有的知識點谣辞,后期還有案例結(jié)合
軟件:AndroidStudio 或者IntelliJIDEA
插件:kotlin
如果有哪里注釋解釋不清楚迫摔,請評論處糾正