gpt4 book ai didi

java - 有没有更好的方法来处理这些 if 语句?

转载 作者:行者123 更新时间:2023-12-02 10:08:59 25 4
gpt4 key购买 nike

我正在编写一个 Java 应用程序,用于绘制加速度计和陀螺仪在三个字段 xyz 中的最小/最大/平均值的图表。我希望能够独立绘制每个因素,即 X 场中的最大加速度和 Z 场中的平均加速度等。

我使用了最小/最大/平均值以及加速度/y/z 和陀螺仪x/y/z 的单选按钮。

我还考虑过为每个变量制作最小/最大/平均值的单选按钮,但这样我就会有 18 个单独的变量。

这是我的代码片段:

if (selectionAccelX == 1 && selectionAccelY == 0 && selectionAccelZ == 0 && 
selectionGyroX == 0 && selectionGyroY == 0 && selectionGyroZ == 0 &&
selectionXAxis == 0) {

Graphing graphing = new Graphing("Average AccelerationX");
graphing.setAccelerationX(avgAccXSec);
graphing.displayGraphing();
graphing.pack();
RefineryUtilities.centerFrameOnScreen(graphing);
graphing.setVisible(true);
}

有没有更简单的方法来解决这个问题?

最佳答案

您的代码将一个变量(单选按钮选择器)映射到另一个变量(值选择器)。一种可能的解决方案是

  • 添加一个枚举(再次包含 18 个值)
  • 将枚举的每个值绑定(bind)到单选按钮的返回值
  • 根据返回值添加 switch/case 以触发正确的行为

我认为这不是更少的代码,而是更具可读性。

关于java - 有没有更好的方法来处理这些 if 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55129641/

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