175

kotlin クラスでは、クラス タイプTのオブジェクトとしてメソッド パラメータがあります (kotlin doc hereを参照) 。オブジェクトとして、メソッドを呼び出すときにさまざまなクラスを渡しています。Javaでは、オブジェクトを使用してクラスを比較でき、それがどのクラスであるかを比較できます。instanceof

それで、実行時にどのクラスであるかを確認して比較したいですか?

instanceofkotlinでクラスを確認するにはどうすればよいですか?

4

9 に答える 9

51

whenと の組み合わせis:

when (x) {
    is Int -> print(x + 1)
    is String -> print(x.length + 1)
    is IntArray -> print(x.sum())
}

公式ドキュメントからコピー

于 2018-01-11T18:08:26.240 に答える