有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何解决声纳问题“正确性此方法在找到相等条件后继续循环”

我有下面的代码。我只想从代码中得到

  1. 如果方法参数中提供的区域设置在labelList中,则返回它 或者
  2. 检查labelList中是否有EN_US,然后将其退回
 String LOCALE = "locale"; 
 List<Map<String, Object>> labelList = // coming for other class
...
 public Object resolveData(String locale) {
 Map<String, Object> enUSLabel = null;
         locale = locale!= null && !locale.isEmpty() ? locale: EN_US;
              for (Map<String, Object> picklistLabel : labelList) {
                if (picklistLabel.get(LOCALE).equals(locale)) {
                  return picklistLabel;
                } else if (EN_US.equals(picklistLabel.get(LOCALE))) {
                  enUSLabel = picklistLabel;
                }
              }
              return enUSLabel;
 }

我遇到声纳问题(在enUSLabel=picklistLabel;)

正确性-此方法在找到相等条件后继续循环 在基于等式的if条件中查找并设置变量后,此方法继续循环,而不会中断循环。由于继续循环似乎不太可能再次找到该项目,因此此时中断似乎是正确的操作

如何纠正?在一个for循环中可能吗


共 (1) 个答案

  1. # 1 楼答案

    return picklistLabel替换enUSLabel = picklistLabel