KOtlin常用オペレータ
4481 ワード
最近GoogleがIO大会でAndroidの第一開発言語としてKotlinを発表したことにより、Kotlinは大いに腹を立てました。しばらくしたらJavaに取って代わるという予言もあります。Androidの役割は大丈夫です。kotlinの常用オペレーターを統合して、初心者にとっては大きな助けになります。
1.安全変換操作子:as
例:
2.コロン :
コロン(「-」)のKotlinにおける役割標識類の継承またはインターフェースの実現、
Javaではimplementsに相当します。 extens は、修飾されたクラス名の後に括弧を入れ、修飾されたインターフェース名の後に括弧がなく、次のようになります。
クラス Worket:Person()PersonInter{
}
3.is操作子
あるインスタンスがあるタイプかどうかをチェックします。あるタイプに属すると判断された場合、判断された分岐の中で直接にこのタイプの場合に使用することができ、変換を表示する必要がありません。
たとえば:
fun get StrigLength(obj:Any):Int?
//obj&右で自動的に動く「String」タイプに変換
if(obj is String&obj.length>0)
return obj.length
return null
)
4.「操作符」
val a=b?length?:-1
例のa値は右側の値に依存し、右側の値はb値から判断されるので、先にb値をnullと判断する必要があり、bがnullであれば、直接にコロン右側の値-1に戻り、b値はnullではない。
属性lengthにアクセスして値を返します。
5.オペレータと!!オペレータ
?オブジェクトの属性にアクセスする前に空でないかチェックすると、nullで属性を呼び出すことができなくなり、空のポインタが出ないようになります。
!オペレータは、賦する前にオブジェクトを空でないと判断しません。危険そうです。しかし!オペレータにも多くの応用シーンがあります。例えば、一部の量は声明の中に特殊な原因で初期化できないことがあります。
彼らはタイプだけを宣言したり、ラテinitを使って修飾したり、値を得た時に割り当てを行う必要があります。この時に使います!!このようなシーンも珍しくありません。
1.安全変換操作子:as
例:
CompanyBean mCompany = intent.getSerializableExtra("company") as CompanyBean
(Javaに相当する----------------> CompanyBean mConpany=(CompanyBean)intent.get Serialzable Extra("company") ) 2.コロン :
コロン(「-」)のKotlinにおける役割標識類の継承またはインターフェースの実現、
Javaではimplementsに相当します。 extens は、修飾されたクラス名の後に括弧を入れ、修飾されたインターフェース名の後に括弧がなく、次のようになります。
クラス Worket:Person()PersonInter{
}
3.is操作子
あるインスタンスがあるタイプかどうかをチェックします。あるタイプに属すると判断された場合、判断された分岐の中で直接にこのタイプの場合に使用することができ、変換を表示する必要がありません。
たとえば:
fun get StrigLength(obj:Any):Int?
//obj&右で自動的に動く「String」タイプに変換
if(obj is String&obj.length>0)
return obj.length
return null
)
4.「操作符」
val a=b?length?:-1
例のa値は右側の値に依存し、右側の値はb値から判断されるので、先にb値をnullと判断する必要があり、bがnullであれば、直接にコロン右側の値-1に戻り、b値はnullではない。
属性lengthにアクセスして値を返します。
5.オペレータと!!オペレータ
?オブジェクトの属性にアクセスする前に空でないかチェックすると、nullで属性を呼び出すことができなくなり、空のポインタが出ないようになります。
!オペレータは、賦する前にオブジェクトを空でないと判断しません。危険そうです。しかし!オペレータにも多くの応用シーンがあります。例えば、一部の量は声明の中に特殊な原因で初期化できないことがあります。
彼らはタイプだけを宣言したり、ラテinitを使って修飾したり、値を得た時に割り当てを行う必要があります。この時に使います!!このようなシーンも珍しくありません。
private lateinit var mDateStr: String
private var mChoiceTime: String? = null
。。。。。。
mDateStr = mChoiceTime!!
6. in
if (i in 1..10) { // 1 <= i && i <= 10
println(i)
}
範囲のオペレータdownTo、
for (i in 4 downTo 1){ print(i) // } // print “4321”
ステップ値ステップ、
for(i in 4 downTo 1 step 2)print:42
7.複数行のオペレータ「」「一度に複数行の内容を出力する。
たとえば:
var str="
one
two
“”