如果 ?: 左邊表示式非空,elvis操作符就會返回左邊的結果,否則返回右邊的結果。
請注意,僅在左側為空的時候,右側的表示式才會計算
val a = b?.length?:-1
//等同於:
val a: int = if(b != null) b.length
else -1
當使用 as 轉型的時候,可能會經常出現 classcastexception。 所以,現在可以使as?安全轉型,當轉型不成功的時候,它會返回 null。
注:在使用intent傳值的時候,會出現空字串不能用as強制轉型,這是應該使用as?
val m: int? = a as? int
用於類的繼承,變數的定義
1、型別和超型別之間的冒號前要有乙個空格
2、例項和型別之間的冒號前不要空格
//定義全域性變數時
var str: string? = null
//類的繼承與變數定義
class testactivity(str: string) : activity{}
檢查某個例項是否是某個型別,如果判斷出屬於某個型別,那麼判斷後的分支中可以直接可當該型別使用,無需顯示轉換
fun getstringlength(obj: any): int?
使用 in 運算子來檢查某個數字是否在指定區間內,
if (i in
1..10)
downto()函式
區間內迴圈:
for (i in
4 downto 1)
// print 「4321」
step()函式
可以進行任意數量的迭代,而不是每次變化都是1
for (i in
1..4
step
2) print(i) // prints "13"
for (i in
4downto
1step
2) print(i) // prints "42"
三引號的形式用來輸入多行文字,也就是說在三引號之間輸入的內容將被原樣保留,之中的單號和雙引號不用轉義,其中的不可見字元比如/n和/t都會被保留
val str = """
onetwo
"""//等價於
val str = "one\ntwo"
val str = "one" +"\n"+"two"
Kotlin常用操作符
如果 左邊表示式非空,elvis操作符就會返回左邊的結果,否則返回右邊的結果。請注意,僅在左側為空的時候,右側的表示式才會計算 val a b?length?1 等同於 val a int if b null b.length else 1當使用 as 轉型的時候,可能會經常出現 classcast...
kotlin 常用操作符
如果 左邊表示式非空,elvis操作符就會返回左邊的結果,否則返回右邊的結果。請注意,僅在左側為空的時候,右側的表示式才會計算。fun elvistest b string?a is a 當使用 as 轉型的時候,可能會經常出現 classcastexception。所以,現在可以使as?安全轉型,...
Kotlin學習 集合操作符之總數操作符
原集合 val list num arraylist arraylistof 1,2,3,5,6,7,8 1.any 只要有乙個符合就返回true 操作符 val any list num.any 結果 any true 2.all 集合中所有元素都滿足函式才返回true 操作符 val all l...