91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Kotlin 基礎語法實例詳解

發布時間:2020-10-15 07:25:28 來源:腳本之家 閱讀:126 作者:jinkui 欄目:編程語言

Kotlin 基礎語法實例詳解


定義和引入Java一樣,在文件開頭, 行結束不需要” ; “

package com.test.hello

import android.os.Bundle

變量

只讀變量,val 開頭,初始化后不能再賦值,相當于Java的 final 變量

val a: Int = 1
val b = 1 //類型自動推斷為Int
val c: Int //沒有初始化時必須指定類型
c = 1 //初始化

可變變量, var 關鍵字開頭

var x = 10
x = 3

函數

函數定義 fun 開頭, 完整的定義如下:

fun sum(a: Int, b: Int): Int {
  return a + b
}

可以簡化成表達式,返回值自動推斷

fun sum(a: Int, b: Int) = a + b

函數沒有返回值時,可以不寫或者返回 Unit

fun test(arg: String) {
  println(arg)
}

或者

fun test(arg: String): Unit {
  println(arg)
}

注釋

和Java一樣,支持行注釋 " // " 和 塊注釋 "/ /"。

不同之處,Kotlin支持塊注釋嵌套,建議不用。

if else

使用條件語句, 和Java一樣

fun min(a: Int, b: Int): Int {
  if (a > b) {
    return b
  } else {
    return a
  }
}

Kotlin支持if 表達式,以上代碼可以寫成: fun min(a: Int, b: Int) = if (a > b) b else a

for
fun main(args: Array<String>) {
  for (arg in args) {
    println(arg)
  }
}

或者

for (i in args.indices) {
  println(args[i])
}

while

和Java類似

fun main(args: Array<String>) {
  var i = 0
  while (i < args.size) {
    println(args[i++])
  }
}

when

when,支持豐富的功能, 比Java的 switch 自由

fun case(a: Int) {
  when (a) {
    1 -> println("1")
     2 -> println("2")
     else -> println("else")
  }
}

范圍, 集合

使用 in 檢查一個數值是否在某個范圍之內

if (x in 1..10) {
  // do
}

檢查一個數值是否在某個范圍之外

if (x !in 0..10) {
  //
}

在一個值范圍內進行遍歷迭代

for (x in 0..10) {
  //
}

使用 in 檢查一個集合是否包含某個對象

if (name in names) { //names.contains()
  //
}

在一個集合上進行遍歷迭代

for (name in names) {
  println(name)
}

null檢查

當一個引用可能為 null 值時, 對應的類型聲明必須明確地標記為可為 null。

fun parseInt(str: String): Int? {
  // todo
}

fun main(args: Array<String>) {
  var name: String?
  val x = parseInt(args[0])
  if (x != null) { // check null
    // todo
  }
}

is 類型

is 檢查一個表達式的值是不是某個類型的實例, 如果對一個不可變的局部變量或屬性進行過類型檢查, 那么之后的代碼就不必再對它進行顯式地類型轉換。

fun getStringLength(obj: Any): Int? {
  if (obj is String && obj.length > 0) {
    return obj.length // obj as String after is
  }
  return null
}


感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

齐齐哈尔市| 阿克陶县| 赣榆县| 泰来县| 南昌县| 建阳市| 满洲里市| 盐池县| 沾化县| 涞水县| 宁远县| 太白县| 永修县| 岳阳县| 昆明市| 图片| 宜兴市| 孟州市| 上蔡县| 即墨市| 西华县| 宁化县| 沂水县| 杭州市| 介休市| 屯门区| 富顺县| 梁山县| 鄂伦春自治旗| 衢州市| 伊宁县| 钟祥市| 昆山市| 城固县| 德清县| 吉木萨尔县| 济源市| 深水埗区| 桂阳县| 本溪| 嵊州市|