- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这个代码:
static def parseString(String inputRow, Particle particle) {
def map = inputRow.split()
particle.mass = map[0].toDouble()
particle.x = map[1].toDouble()
particle.y = map[2].toDouble()
}
这个测试代码:
static final inputRow = "1 -5.2 3.8"
def particle1 = new Particle()
def "string should be parsed into particles"() {
when:
RepulsionForce.parseString(inputRow, particle1);
then:
particle1.mass == 1
particle1.x == -5.2
particle1.y == 3.8
}
上述测试按原样通过; 但是,当我将 parseString 代码更改为以下代码时:
static def parseString(String inputRow, Particle particle) {
def map = inputRow.split()
particle.mass = map[0].toFloat()
particle.x = map[1].toFloat()
particle.y = map[2].toFloat()
}
相同的测试因以下错误而失败:
Condition not satisfied:
particle1.x == -5.2
| | |
| | false
| -5.2
Particle@a548695
最佳答案
默认情况下,Groovy 中的 -5.2
是 BigDecimal,因此您将 BigDecimal 与 Float 对象进行比较。这些通过:
def a = -5.2
def b = "-5.2".toFloat()
assert a != b
assert a.getClass() == BigDecimal
assert b.getClass() == Float
assert a.toFloat() == b
Groovy 接受 BigDecimal 和 Double 之间的比较:
def g = -5.2
def h = "-5.2".toDouble()
assert g == h
assert g.getClass() == BigDecimal
assert h.getClass() == Double
如果您需要进行一些需要精度的计算,您可能最好使用 BigDecimal,因为它们保留它(尽管会降低性能)
def c = -5.2
def d = "-5.2".toBigDecimal()
assert c == d
assert c.getClass() == BigDecimal
assert d.getClass() == BigDecimal
否则,根据 @Tim 的评论,使用 -5.2f
,因此针对 Float 对象进行比较:
def e = -5.2f
def f = "-5.2".toFloat()
assert e == f
assert e.getClass() == Float
assert f.getClass() == Float
关于Groovy 和 Spock : toDouble vs toFloat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18962842/
我想知道是否有一个函数可以将有理类型转换为 Float(Rational a => a -> Float)。 我试过hoogling ,但什么也没找到。 最佳答案 在 Haskell 中,您不会转换到
我尝试使用 ADF 数据流使用 toFlaot() 函数将包含“630.180004119873”等数据的列转换为 float 据类型,但是在输出时我可以看到数据已转换为“630.18”。 有谁知道如
我正在尝试运行一个密码查询,我必须比较一个存储为字符串的值,但是当我使用函数 toFloat 时,我得到一个错误: Unknown function 'toFloat' (line 2, column
为什么不存在方法Convert.ToFloat(),C#有ToDouble(),ToDecimal()... 我想转float,可以用什么方法? ( float )变量? 最佳答案 有 - 但它叫做
我有这个代码: static def parseString(String inputRow, Particle particle) { def map = inputRow.spli
我有这个代码: static def parseString(String inputRow, Particle particle) { def map = inputRow.spli
我想在 Qt 中将文本更改为 float 以进行计算 float test = ui.tableWidget->item(0, 1)->text().replace(",", ".", Qt::Cas
本文整理了Java中org.datavec.api.writable.Writable.toFloat()方法的一些代码示例,展示了Writable.toFloat()的具体用法。这些代码示例主要来源
我有一个数字输入字段,可以在用户键入时通过状态设置新值。这很好用。但是,如果我向其中添加小数(toFixed),则仅输入一位数字后光标将跳转到输入的末尾。例如,当我删除现有内容并输入其他内容时,就会发
how to convert str in float? paris=requests.get('https://www.metaweather.com/api/location/search/?qu
** 我知道类似的问题!! ** 我的问题是针对我的特殊情况... 我使用 Google Vision 训练我自己的模型来检测自定义对象。 过去我遇到过关于形状的类似错误,我通过 reshape 输入
我的 中有此代码DestinationCreateActivity.kt 创建新数据,如何将文本转换为浮点数? DestinationCreateActivity.kt newDestination.
我是一名优秀的程序员,十分优秀!