簡體   English   中英

Java Math類似Kotlin中的類

[英]Java Math like classes in Kotlin

我們如何在Kotlin像Util類一樣創建Java Math。 這樣我就可以調用Math.add()類的東西。 我嘗試使用伴侶對象。 讓我知道是否還有另一種方法。

您可以使用簡單的object聲明來實現該語法:

object Math {
    fun add(x: Int, y: Int) = x + y
}

這將創建一個單例類,在運行時只有一個實例,您可以使用Math.add(1, 4)語法在此實例上調用方法。


伴侶對象只是這些object聲明嵌套在類中的特例,其成員可以通過容器類的標識符進行訪問,類似於Java中的靜態函數。

實際上,您可以將任何對象嵌套在一個類中, 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()

你可以這樣做

    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
            }
            ...
        }
     }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM