当我尝试从弧度/度数转换时,Scala为什么这样做?反之亦然?

问题描述

假设我有一个接受一个I​​nt并返回输入正弦的方法

def sinTest(x: Int): Double = {
    Math.sin(x)
}
def main(args: Array[String]): Unit = {
    println(sinTest(30))
  }

代码输出为:-0.9880316240928618(按预期)。 但是,当我将Math.sin(x)更改为Math.sin(x.todegrees)时,它会为我提供:-0.40979706006803573

不是应该给我0.5吗?为什么返回此号码? 但是,当我执行Math.sin(x.toradians)时,它会给我以下信息:0.5000000126183913

为什么当我将其切换为弧度时,实际上却给出0.5,而当我转换为度数时应该给出0.5?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)