Java
のような数学は、UtilクラスのようにKotlin
で作成できます。だから私はMath.add()
のようなものを呼び出すことができます。 コンパニオンオブジェクトを使用しようとしています。別の方法があれば教えてください。Java MathのようなクラスのKotlin
0
A
答えて
5
あなたはちょうどその構文を達成するために、単純なobject
declarationを使用することができます。
object Math {
fun add(x: Int, y: Int) = x + y
}
これは、実行時に1つのだけのインスタンスと、シングルトンクラスを作成し、あなたはMath.add(1, 4)
構文で、このインスタンスのメソッドを呼び出すことができます。
コンパニオンオブジェクトは、同様に、Javaの静的関数に、コンテナクラスの識別子を介してアクセスでき、そのメンバーで、クラスの中にネストされたこれらのobject
宣言の単なる特殊なケースです。
実際にクラス内のオブジェクトをネストすることができます。companion
キーワードを使用すると、明示的な名前を付けずにオブジェクトを作成できます。名前のネストされたオブジェクトの
例:
class A {
fun a() {}
object B {
fun b() {}
}
companion object {
fun o() {}
}
}
これらの関数は、このように呼び出すことができます。
A().a() // this call of course needs an instance of A
A.B.b()
A.Companion.o()
A.o()
0
はあなたが行うことができます。このような
class Math {
companion object {
fun add(val x: Int, val y: Int): Int {
return x+y
}
fun subtract(val x: Int, val y: Int): Int {
return x-y
}
fun multiply(val x: Int, val y: Int): Int {
return x*y
}
...
}
}
関連する問題
- 1. Java Mathクラスのネイティブコード
- 2. gradlesタスクからcommons-math Javaクラスを実行する
- 3. javaのような友人クラスのメカニズム
- 4. Java MavenプロジェクトのKotlinクラスが動作しない(Eclipse)
- 5. Java Math Commons CurveFitterの使い方は?
- 6. どのようにKotlin
- 7. どのようにKotlin
- 8. モックのクラスがKotlinのJavaクラスと等しくないのはどうですか?
- 9. パッケージJotのKotlin .ktクラス
- 10. 中括弧なしのKotlinクラス
- 11. "Horse" Mathのゲーム
- 12. JavaクラスでKotlinクラスを使用するには?
- 13. AndroidのパフォーマンスのKotlin列挙クラス
- 14. Kotlin、どのようsearchViewは
- 15. Kotlin JPA:どのようにJavaでは@OneToOne初期
- 16. Matrix Math with Sparklyr
- 17. IDEヘルプなしのKradlinセットアップ - Kotlinクラスがクラスパスにならない
- 18. KotlinプロパティがJavaクラス(EditText setText)の構文にどのようにアクセスするのですか?
- 19. Kotlinどのように連鎖フィールドにJavaのような他のプログラミング言語で同じデータ型
- 20. JavaクラスからKotlinデータクラスへの移行方法
- 21. Kotlinクラスの委任機能
- 22. Android Kotlinクラスの改良版
- 23. Kotlin:クラス内のオブジェクトとコンパニオンオブジェクトの相違
- 24. HP QTP(VbScript):Javaオブジェクト(DotNetFactory for .NETクラスのような)を扱う
- 25. Java Math RoundingMode.HALF_EVENが予期しない結果を表示する
- 26. JavaのString.getBytes()のKotlin相当
- 27. のJava Kotlinのジェネリクス翻訳
- 28. boost :: math :: erfのアルゴリズム
- 29. MathオブジェクトのJavaScriptコード
- 30. Kotlinクラスのインスタンスが正しくアサートされない
トップレベルの機能を使用することを検討してください上記の2つの方法の中で明示的なクラス – voddan