java-annotations - 如何使用 Java 注释设置双精度
问题描述
我正在编写一个用于 Tridiums Niagara Framework 4.3 版的自定义模块,我尝试设置的 defaultValue 给出以下错误:
“类”或“接口”预期错误。
我尝试了几种不同的方法来设置它,但错误仍然存在。我尝试从头开始并得到相同的错误。
package com.lgelectronics.lge;
import javax.baja.nre.annotations.Facet;
import javax.baja.nre.annotations.NiagaraProperty;
import javax.baja.nre.annotations.NiagaraType;
import javax.baja.sys.*;
@NiagaraType
@NiagaraProperty
(
name = "Schedule",
type = "Baja:Boolean",
flags = Flags.SUMMARY,
defaultValue = "False"
)
@NiagaraProperty
(
name = "OccupiedCoolingSetPoint",
type = "Baja:Double",
flags = Flags.SUMMARY,
facets=
{
@Facet(name = "BFacets.UNITS", value = "BUnit.getUnit(\"fahrenheit\")"),
@Facet(name = "BFacets.PRECISION", value = "BInteger.make(1)"),
@Facet(name = "BFacets.MIN", value = "BDouble.make(0D)"),
@Facet(name = "BFacets.MAX", value = "BDouble.make(100D)")
},
defaultValue = "BDouble.make(\"74.0\")"
)
@NiagaraProperty
(
name = "UnOccupiedCoolingSetPoint",
type = "Baja:Double",
flags = Flags.SUMMARY,
facets=
{
@Facet(name = "BFacets.UNITS", value = "BUnit.getUnit(\"fahrenheit\")"),
@Facet(name = "BFacets.PRECISION", value = "BInteger.make(1)"),
@Facet(name = "BFacets.MIN", value = "BDouble.make(0D)"),
@Facet(name = "BFacets.MAX", value = "BDouble.make(100D)")
},
defaultValue = "BDouble.make(\"85.0\")"
)
@NiagaraProperty
(
name = "OccupiedHeatingSetPoint",
type = "Baja:Double",
flags = Flags.SUMMARY,
facets=
{
@Facet(name = "BFacets.UNITS", value = "BUnit.getUnit(\"fahrenheit\")"),
@Facet(name = "BFacets.PRECISION", value = "BInteger.make(1)"),
@Facet(name = "BFacets.MIN", value = "BDouble.make(0D)"),
@Facet(name = "BFacets.MAX", value = "BDouble.make(100D)")
},
defaultValue = "BDouble.make(\"70.0\")"
)
@NiagaraProperty
(
name = "UnOccupiedHeatingSetPoint",
type = "Baja:Double",
flags = Flags.SUMMARY,
facets=
{
@Facet(name = "BFacets.UNITS", value ="BUnit.getUnit(\"fahrenheit\")"),
@Facet(name = "BFacets.PRECISION", value = "BInteger.make(1)"),
@Facet(name = "BFacets.MIN", value = "BDouble.make(0D)"),
@Facet(name = "BFacets.MAX", value = "BDouble.make(100D)")
},
defaultValue = "BDouble.make(\"55.0\")"
)
public class BSchedule extends BComponent {
}
我希望 defaultValue 行上没有“类”或“接口”预期错误。
解决方案
你的语法有问题,你应该使用下面的语法。
defaultValue = "BDouble.make(55.0)",
查看完整示例,
@NiagaraProperty(
name = "delayTime",
type = "baja:Double",
defaultValue = "BDouble.make(500)",
facets = {
@Facet(name = "BFacets.MIN", value = "BDouble.make(0)"),
@Facet(name = "BFacets.MAX", value = "BDouble.make(2000)"),
@Facet(name = "BFacets.UX_FIELD_EDITOR", value = "BString.make(\"midi:RangeSlider\")")
}
)
推荐阅读
- php - .htaccess 文件中的动态子域处理,用于 xxx.domain.com 重定向到 ../users 文件夹
- html - 在来自 Unix shell 的电子邮件中嵌入动态 HTML 表
- javascript - 在 Next.js 页面中检索子域
- javascript - Flexbox,滚动元素
- mysql - 为什么MYSQL时间比服务器时间晚2分钟
- reactjs - 动作完成时如何告诉 React-Redux 视图?
- mongodb - 为什么mongodb不能对复合索引的无前缀子索引进行有效排序?
- python - 如何将谷歌应用引擎的“软内存限制”增加到 2gb 以上
- javascript - 无法提交 Braintree 并出现验证错误
- loops - 迭代文件中的行时如何在匹配之前和之后输出行?