頻道欄目
首頁 > 資訊 > Android > 正文

Android開發Kotlin基礎教程

17-12-04        來源:[db:作者]  
收藏   我要投稿

Android開發Kotlin基礎教程

一、變量

Kotlin是這樣定義的

var n : Int = 30;
var n : Int;
var n = 100;

總結幾點:
1.數據類型要放到變量之后,使用:分隔
2.定義變量需要使用使用var修飾,如果出現m = 10這種情況,編譯器就會報錯。定義常量需要使用val修飾。
3.由Int可以看出,數據類型是需要大寫的。
4.編譯器可以根據變量之后的賦值推斷出變量的數據類型。

二:數據類型

1.數值類型

主要的數值類型如下
Double
Float
Long
Int
Short
Byte
在Kotlin中無法進行數值之間的隱式轉換,但是提供了相應的轉換方法,形式為: to數據類型名():

fun main(args:Array){
var a : Int = 10
var b : Short = 20
a = b.toInt()
print(a)

}
最后的打印的值應為20

2.布爾類型
使用Boolean描述,具體操作和Java中相似

3.字符類型
使用Char描述,同樣支持轉義符,使用 \ 描述,在Java中一個字符可以看做是對應的ASCII碼的值,但是Kotlin必須使用toInt()進行轉換才能轉換為對應的ASCII碼的值。

4.字符串
1.普通的字符串:參考Java
var str = “hello Kotlin”
2.raw string:也就是會保留原始格式的字符串

    var str1 = """
    1234    324  說什么
    2312321
    啊哈哈
    """
print(str1)

打印結果
這里寫圖片描述
這一點還是有點意思的

5.數組
與Java中不同的是Kotlin中有很多種初始化數組的方式
1.arrayOf():可以定義存儲任何類型的值的數組
var str1 = arrayOf(‘1’,1,’c’,a)
2.使用arrayOfNulls定義指定長度的空數組
var str3 = arrayOfNulls(10)
3.使用Array初始化10個元素都為1的數組
var str4 = Array(10,{1})

三:函數

Kotlin中一般的函數形式如下

fun 函數名(變量名:數據類型) : 返回值的類型
{

}
當沒有返回值的時候,返回值的類型可以為Unit或者不填
例如

fun test(a:Int,b:Int):Int{
    //此處不可以有分號
    return a + b

}
fun myPrint():Unit
{
    println("hello kotlin!")
}

四:if,when,for,while語句

1.if語句

var a = 10
var b = 20
var min = if (a > b){
    a
}else{
    b
}
println(min)

其中if和else之后都被看成一個代碼塊,將最后一行的表達式作為返回值,上述中因為b > a ,所以返回值為b,打印為20

2.when語句

① when作為表達式使用和if類似,第一個滿足條件的最后一行表達式作為返回值

var aWhen = 2;
var result = when(aWhen){
    1 -> {
        20
    }
    else -> {
        30
    }
}
println(result)

最后的打印的值為30,其實可以看出,when的作用就和Java中switch一樣

②when作為語句使用

var bWhen = 2
when(bWhen){
    1 -> {
        println("這里是1")
    }
    2 -> {
        println("這里是2")
    }
    else -> {
        println("都不是")
    }
}

值得注意的是這里的else語句是不可以缺少的,當其中的1和2要執行相同的語句的時候,使用逗號隔開 1,2即可,甚至分支的條件也可以是函數

3.for循環

var str = intArrayOf(2,3,4,5,6,7,8,9,10)
for((index,value) in str.withIndex()){
    println("str[$index] = " + value)
}

其中index為索引,value為值

4.while循環和do……while循環

使用方式參考Java

相關TAG標簽
上一篇:臺積電:絕大多數7nm客戶都會轉向6nm_IT新聞_博客園
下一篇:最后一頁
相關文章
圖文推薦

關于我們 | 聯系我們 | 廣告服務 | 投資合作 | 版權申明 | 在線幫助 | 網站地圖 | 作品發布 | Vip技術培訓 | 舉報中心

版權所有: 紅黑聯盟--致力于做實用的IT技術學習網站

美女MM131爽爽爽毛片