В Scala есть 2 представления чисел двойной точности: одно - AnyVal
, другое AnyRef
. В JVM они отображаются на примитив double
и класс java.lang.Double
соответственно.
Что же происходит на платформах, отличных от JVM? Я могу использовать Scala.Double
для примитива, но как мне указать, что мне нужна ссылка на упакованный Double без указания java.lang.Double
?
[Контекст - осталось разобраться в ответе Томаса, но не в основной проблеме.
У меня есть Double, который я хочу внедрить с помощью Spring в компонент Wicket:
class MyPanel(id: String) extends Panel(id) {
@SpringBean(name="rxAlarmLimitDb") var alarmLimitDb: Double = _
Если я укажу тип как scala.Double
, как указано выше, инжектор откажет, так как он может вводить только объекты .
Если я укажу java.lang.Double
в качестве типа поля, все будет хорошо
class MyPanel(id: String) extends Panel(id) {
@SpringBean(name="rxAlarmLimitDb") var alarmLimitDb: java.lang.Double = _
Но я пытаюсь уменьшить свою зависимость от возврата к Java API, так как же это сделать? Я представляю упакованный двойной
без него?
]