gpt4 book ai didi

java - 将度数转换为象限名称的最佳方法是什么

转载 作者:行者123 更新时间:2023-12-01 09:40:25 25 4
gpt4 key购买 nike

例如,如果输入为 22.5 度,则输出将为“东北

enter image description here

最佳答案

最佳”转换方法是将度数四舍五入到下一个象限,这当然取决于你的指南针有多少个基点...

假设您只有 4 个北、南、西、东,

然后尝试转换 180° 将与南完全匹配(假设北为 0°=360°),但我预计 200° 也指向南,因为它比西更接近该方向。 ..

160° 的标准相同,因为距离南边比东边更近

解决方案

定义枚举

基点

  enum CPoint {
NORTH,
EAST,
SOUTH,
WEST
}


and test it like:

public static void main(String[] args) {
final int divisor = 360 / CPoint.values().length;
for (int i = 0; i < 360; i++) {
final int coci = i / divisor;
final int resto = i % divisor;
if (resto <= divisor / 2) {
System.out.println(i + "--->" + CPoint.values()[coci % CPoint.values().length]);
} else {
System.out.println(i + "--->" + CPoint.values()[(coci + 1) % CPoint.values().length]);

}
}
}

输出将显示循环如何将i的值舍入到最接近的基点

这种方法最好的部分是您可以定义一个方法,该方法采用整数作为参数并向基点返回枚举常量...

然后你可以做一些不错的事情,比如开关盒或类似的东西:-)

关于java - 将度数转换为象限名称的最佳方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38503399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com