本文適合有Java基礎的人html
相比java,省略括號,能夠自動判斷類型,省略new關鍵字,空指針捕獲java
kotlin文件(kt文件)中,只有要下列的方法,就能夠運行,無需像以前的java那般,還要定義個類,寫上main
方法api
fun main(args: Array<String>) { println("hello world") }
這是說是基本數據類型,其實下面的這些都是kotlin封裝好的類,就是至關於Java中的Integer,FLoat等包裝類,數值會自動包裝。jvm
這樣的好處就是,數值是一個對象,能夠保證不會出現空指針。函數
類型 | 位寬度 |
---|---|
Double | 64 |
Float | 32 |
Long | 64 |
Int | 32 |
Short | 16 |
Byte | 8 |
注意,kotlin中的字符類型Char不屬於基本數據類型post
因爲是對象,因此比較得比較內容,kotlin中封裝了==
和===
兩個運算符供咱們比較不一樣的內容和對象地址this
===
表示比較對象地址,兩個 ==
表示比較兩個值(內容)大小spa
類型轉換:3d
上面的基本數據類型都有下面的方法,負責類型轉換指針
//顯示轉換 val num: Byte =1 val num1 = num.toInt
兩個關鍵字:
val
聲明一個只讀常量var
聲明一個變量val
至關於使用了java中的final
關鍵字修飾變量(聲明常量) var
就是和以前聲明
//聲明一個整型常量num,數值爲12,以後沒法對num進行賦值操做 val num: Int = 12 //kotlin的自動判斷類型特性,上面的式子也能夠這樣寫 val num = 12 //聲明一個常量,賦值過一次以後,沒法再次對常量進行賦值 val num: Int num = 12
//kotlin的基本數據類型變量,還能夠加上「_」來便於閱讀,不影響數值 //下面的num仍是一個Int類型的數據 val num = 1_000_000 //小數也能夠加上「_」 val num = 1.02_120
//和java同樣,字符串裏能夠包含轉義字符 val str = "hello world\n" println(str)
//裏面的\n也會打印出來 val str = """hello world\n""" println(str)
//去除前面的「|」 val text = """ |Tell me and I forget. |Teach me and I remember. |Involve me and I learn. |(Benjamin Franklin) """.trimMargin() //去除前面的「>」 val text = """ >Tell me and I forget. >Teach me and I remember. >Involve me and I learn. >(Benjamin Franklin) """.trimMargin(">")
$
開頭,後面可接一個變量,或者是用花括號,裏面寫一個表達式
val num = 5 val text = "i = $num"//輸出「i=5」 val text = "the length = ${arrays.length}" //顯示$,$不支持轉義 val price = "${'$'}9.99" println(price)
lastIndex(最後的下標值),length
如下加粗的方法都是kotlin中String新增長的方法
方法 | 描述 |
---|---|
String [index] | 取String的指定下標的元素 |
**String first() ** | 取第一個元素 |
**String last() ** | 取最後一個元素 |
indexOf | |
indexLastOf | |
String plus(text) | 和「+」效果同樣,鏈接字符串 |
Boolean equals(text[,ignoreCase]) | 第二個參數不寫,至關於以前說的「==」比較內容,第二個參數爲true,則忽略內容大小寫就行比較 |
String substring(startIndex[,endIndex]) | |
String substringBefore() | 截取第一個出現的字符串前面的字符串內容 |
String substringAfter() | 截取第一個出現的字符串後面的字符串內容 |
String substringBeforeLast() | 截取最後一個出現的字符串前面面的字符串內容 |
String substringAfterLast() | 截取最後一個出現的字符串後面的字符串內容 |
replace() | 替換 |
replaceFirst() | 替換第一個出現的字符串 |
replaceBefore() | 替換第一個出現的字符串前面的內容 |
replaceAfter() | 替換第一個出現的字符串後面的內容 |
replaceBeforeLast() | 替換最後一個出現的字符串前面的內容 |
replaceAfterLast() | 替換最後一個出現的字符串後面的內容 |
spilt() | |
Boolean isBlank() | 字符串是否全是空格 |
Boolean isEmpty() | 字符串長度是否爲0,爲0返回true |
String reversed() | 字符串反轉 |
String startsWith() | |
String endsWith() | |
String trim() | 清除空格 |
String drop(int) | 刪除頭部的幾個元素並返回 |
String dropLast(int) | 刪除末尾的幾個元素並返回 |
replaceFirst()等:
val s = "this is starsone" //替換第一個is以前的內容 println(s.replaceBefore("is", "are"))//輸出爲areis is starsone //替換第一個is以後的內容 println(s.replaceAfter("is", "are"))//輸出爲thisare //替換最後一個is以前的內容 println(s.replaceBeforeLast("is", "are"))//輸出爲areis starsone //替換最後一個is以後的內容 println(s.replaceAfterLast("is", "are"))//輸出爲this isare
isBlank和isEmpty:
val text = " " println(text.isBlank())//輸出爲true println(text.isEmpty())//輸出爲fasle
drop和dropLast:
val text = "hello" println(text.drop(2))//輸出爲llo println(text.dropLast(2))//輸出爲hel
substringBefore等:
val text = "this is starsone" //截取第一個is以前的內容 println(text.substringBefore("is")) //截取最後一個is以前的內容 println(text.substringBeforeLast("is"))//注意,這裏還包括空格 //截取第一個出現的is後面的內容 println(text.substringAfter("is")) //截取最後一個出現的is後面的內容 println(text.substringAfterLast("is"))
參考連接 關於字符串(String)經常使用操做彙總 kotlin text(有關於string的各類方法介紹) kotlin api文檔 菜鳥教程 kotlin基本類型
原文出處:https://www.cnblogs.com/stars-one/p/11249014.html