我的问题很简单。如您现在所见,tan(45)等于1。但是当我使用Math.tan(45)时,它输出1.6197751905438615。
我不知道它是否有帮助,但这是我使用的代码:
double angle = Math.tan(45);
有什么想法为什么不起作用?
答案 0 :(得分:3)
Math.tan
的自变量是弧度中的一个角度。 (这在the Javadoc for that method中有所提及。)您要以度为单位给它一个角度。
要解决此问题,可以使用Math.toRadians
(乘以π / 180)将角度从角度转换为弧度:
double angle = Math.tan(Math.toRadians(45));
请注意,由于精度(表示和计算)的限制,精确不会为1;在我的机器上,结果约为0.9999999999999998889776975。