以下のスニペットで使用されているバックティックは何ですか?
なぜfun is(amount:Int ):Boolean { ... }
の周りに追加するのですか?
verifier.`is`(amount)
is
はKotlinの予約キーワードであるためです。 KotlinはJavaおよびis
はJavaの有効なメソッド(識別子)名であると相互運用可能であると想定されているため、バックティックを使用してメソッドをエスケープして使用できるようにします。キーワードとして混同することなくメソッドとして使用します。これがないと、無効な構文になるため機能しません。
これは強調表示されています Kotlinドキュメント内 :
Java Kotlinのキーワードである識別子のエスケープ
Kotlinキーワードの一部は、Javaで有効な識別子です:
in
、object
、is
など。JavaライブラリがKotlinを使用する場合メソッドのキーワードは、バックティック( `)文字でエスケープするメソッドを呼び出すことができますfoo.`is`(bar)
これにより、名前がKotlinキーワードであるJavaメソッドを呼び出すことができます。バッククォートを省略すると機能しません。
バックティックは、Kotlinキーワードを表す名前を持つメソッドを呼び出すことを可能にする「回避策」です。
kotlinlang を参照してください:
Kotlinキーワードの一部は、Javaの有効な識別子です。in、object、isなど。JavaライブラリがメソッドにKotlinキーワードを使用している場合でも、バックティック( `)文字
is
予約済みKotlinのリストで words 関数/クラス名にKotlin予約語(is
やobject
など)を使用するには、ラップする必要がありますバックティックへ
Kotlinキーワードの一部は、Javaの有効な識別子です:in、object、isなど。JavaライブラリがメソッドにKotlinキーワードを使用している場合でも、バックティック( `)文字