除法时Swift返回0

  • 本文关键字:返回 Swift 除法 swift
  • 更新时间 :
  • 英文 :


我正在尝试做基本除法,它总是返回0作为答案。

let mathStuff = Double((stepCount / Level.expRequired())) * 100
print ("(totalSteps) / (Level.expRequired()) * 100 = (mathStuff)")

My print return

2117 / 2500 * 100 = 0.0

我试过使用NSDecimal而不是Double,也试过不使用Double或NSDecimal,让它只是做数学,它返回为0而不是0.0。

我真的很困惑我在这里做错了什么,这似乎是基本的数学,我不知道为什么我总是给出0作为答案。

您的问题可能在这里:2117/2500,25002117都是Ints。

如果它们是Double,那么它将工作:2117.0 /2500.0==>产生非零除法

尝试先将这些变量强制转换为double,你不需要强制转换结果本身:Double(stepCount) /Double(Level.expRequired()))*100

实际上,我认为只有一个需要强制转换:Double(stepCount)/Level.expRequired())*100

相关内容

  • 没有找到相关文章

最新更新