我有temp2值-52340.0和hslColor.Luminosity是240.0
Dim temp1 As Double = (hslColor.Luminosity - temp2)
时。它应该给出-ve数字,但我总是得到正数。
结果应该是-52100,但我得+52100。如何处理?
答案 0 :(得分:5)
240 - (-52340)= 52580
你还记得你减去一个负数会发生什么吗?
答案 1 :(得分:4)
结果应该是-52100,但我得+52100。
这是个谎言。您应该获得52580
,而不是52100
。
如果您将这些值替换为:
240 - -52340
你减去一个负数,所以它与添加一个正数相同:
240 + 52340
等于52580
。
如何处理?
要获得-52100
的预期结果,如果temp2
始终为负,请使用此结果:
Dim temp1 As Double = (hslColor.Luminosity + temp2)
或使用此功能,如果您需要减去temp2
的{{3}},无论它是负面还是正面:
Dim temp1 As Double = (hslColor.Luminosity - Math.Abs(temp2))
答案 2 :(得分:4)
这就是你在做的事情:
Dim temp1 as Double = (240 - -52340.0)
你正在减去一个负数。
答案 3 :(得分:0)
Dim temp1 As Double = (240 - -52340)
答案是52580
Dim temp1 As Double = (240 - 52340)
答案是-52100