2

floatToIntBitsおよびintBitsToFloatJava の Float クラスのメソッドです。Scalaにはそれらの機能がありますか?

4

2 に答える 2

5

Scala は JVM 言語であるため、使用している Java ランタイムのすべての機能にアクセスできます。これは、JVM の上で実行されるすべての言語の特徴であり、JVM が非常に人気がある理由です (JRuby、Clojure など)。

Scala にも Float クラスがあるため、Java Float 型の static メソッドにアクセスしたいことを明示的に述べる必要があるかもしれませんが、それ以外は問題ありません。

java.lang.Float.floatToIntBits()

言い換えれば、Java が既に実装しているので、Scala がこれを実装する理由はありません。Java に既に存在する機能が必要な場合は、Java 実装を使用してください。

あなたの明確なコメントについて:

Integer.parseIntIntegerは入力としてa を持つクラスの静的メソッドですがString、Scala のtoIntは整数表現を抽出するための Strings 以外の多くの異なるクラスのインスタンスで一般的に実装されるインスタンス メソッドです。彼らは非常に大まかな意味で同じことを「行います」。aStringを入力として使用したり、 aをInteger.ParseInt呼び出したりしても同じ結果が得られますが、それら同じものではないため、あまり適切な比較にはなりません。設計的に、言語全体を見ると、2 つの非常に異なるインターフェイスが公開されています。String 固有のケースで見られるように、いくつかの重複がありますが、一般的なケースではDRYtoIntStringScala が次のような特定のものを再実装する必要がまったくない場合、ここでは哲学が非常に有効です。floatToIntBits

于 2013-03-07T00:20:59.680 に答える
1

Scala は Java からそれらを使用できます。

scala> java.lang.Float.floatToIntBits(1.0f)
res0: Int = 1065353216

scala> java.lang.Float.intBitsToFloat(1)
res1: Float = 1.4E-45
于 2013-03-07T00:21:18.133 に答える