floatToIntBits
和intBitsToFloat
是Java的Float類中的方法。斯卡拉是否有這些功能?Scala是否有floatToIntBits和intBitsToFloat方法?
回答
由於Scala是一種JVM語言,因此您可以訪問您正在使用的任何Java運行時的任何和所有功能。這是在JVM之上運行的所有語言的特徵,這就是爲什麼它非常受歡迎(JRuby,Clojure等)
您可能必須明確聲明您要訪問Java Float類型的靜態方法,因爲Scala也有一個Float類,但除此之外你應該沒問題。
java.lang.Float.floatToIntBits()
換句話說,Scala沒有理由實現它,因爲Java已經做到了。如果您需要該功能,因爲它已經存在於Java中,那麼只需使用Java實現。
關於你的澄清意見:
Integer.parseInt
是在Integer
類與String
作爲其輸入一個靜態方法,而Scala的toInt
是提取整數的字符串以外的許多不同類的實例普遍採用的實例方法表示。他們只是在很寬鬆的意義上「做」相同的事情;使用String
作爲Integer.ParseInt
的輸入或者撥打toInt
的String
將達到相同的結果,但它們不是相同的東西,所以它不是一個很適合的比較。從設計角度和整體看語言,他們暴露了兩種截然不同的界面。有一些重疊,我們可以在字符串特定的情況下看到,但在一般情況下,DRY哲學在這裏非常有用,因爲絕對不需要Scala來重新實現像floatToIntBits
與'Integer.parseInt'的比較是爲了闡明'functional'的含義;它並不是要表達一種「上」的關係。你的'DRY'解釋是好的,但是這不好意思,爲什麼Scala重新定義'List'而不是使用Java的LinkedList或者Java的List接口(你會發現其他的例子)。同樣,您的答案意味着「不,Scala不重新定義該功能」。而且由於我搜索並找不到任何,你似乎知道斯卡拉,你必須是正確的。 – learner 2013-03-07 00:45:03
@learner Scala重新實現了列表,因爲底層結構/迭代器是不同的,因此它們可以更容易地以功能方式使用。 – 2013-03-07 01:20:54
Scala可以從Java使用它們。
scala> java.lang.Float.floatToIntBits(1.0f)
res0: Int = 1065353216
scala> java.lang.Float.intBitsToFloat(1)
res1: Float = 1.4E-45
- 1. intBitsToFloat對應部分:floatToIntBits或floatToRawIntBits?
- 2. Scala:方法參數String *和Array [String]之間是否有區別
- 3. 是否有可能將Scala方法轉換爲python方法
- 4. Scala Future和ExecutionContext是否有com.twitter.util.Local?
- 5. 是否有可能獲得scala中的方法的分析樹?
- 6. 2.7中的Scala類型失敗:是否有解決方法?
- 7. 是否有可能嘲笑與Mockito和Specs2視圖範圍的Scala方法?
- 8. Scala是否具有0元和1元組的語法?
- 9. 是否有「AllIndexesOf」方法?
- 10. 是否有@protected方法?
- 11. jQuery是否有AJAJ方法?
- 12. 是否有CapitalizeFirstLetter方法?
- 13. driver.lockScreen方法是否有效?
- 14. 屬性是否有方法?
- 15. Scala中有類方法嗎?
- 16. 在()方法之後的Scala中有沒有方法知道測試是否失敗?
- 17. Scala方法和函數語法概述
- 18. 實施「IntBitsToFloat」功能在VB.NET
- 19. Scala類方法
- 20. 玩Scala - 有沒有JSON的POST方法
- 21. 檢查序列中是否存在值的可能方法scala
- 22. 是否可以將基類的Scala方法重命名?
- 23. 是否可以在scala中獲取方法的參數名稱
- 24. 是爲了yield-getOrElse範式Scala還是有更好的方法?
- 25. Scala中是否有任何方法將類代碼拆分爲多個文件?
- 26. 是否有可能將方法添加到Scala中的內置類型中?
- 27. 是否有可能改變Scala中基類/特徵的方差?
- 28. scala是否有功能對象的快捷方式?
- 29. 是否有Scala特定的方式來實現定期執行?
- 30. 是否有方法檢查所有數組項是否爲'0'?
你知道你可以將Java類/方法導入到Scala中嗎? – 2013-03-06 23:42:49
@OliCharlesworth是的。我做。我可以將所有Java導入到Scala中:但我們有兩種語言。 – learner 2013-03-06 23:56:40
然後我不確定你在問什麼。 'Float'是一個庫(包)中的一個類;你可以自由導入該類/包。 – 2013-03-06 23:59:29