【问题标题】:for loop in java for(feature city : cities) [duplicate]java for(功能城市:城市)中的for循环[重复]
【发布时间】:2016-08-29 05:03:38
【问题描述】:

我正在做一个将数据读入列表的项目。我在 for 循环中有一个问题。特色城市:城市如何运作?我知道城市是列表,但城市是什么意思? city没有预定义,java是如何理解city的?

List<Feature> cities = GeoJSONReader.loadData(this, cityFile);
    cityMarkers = new ArrayList<Marker>();
    for(Feature city : cities) {
      cityMarkers.add(new CityMarker(city));
    }

【问题讨论】:

  • 您只是在遍历您的列表。 Iterator 只是将容器中不等于 null 的任何内容视为对象。
  • 'city' 只是您定义的“Feature”类型的变量,用作列表的迭代器。

标签: java


【解决方案1】:

这是一个 for each 循环。它的作用是: 对于您城市列表中的每个城市,它会显示执行大括号内的任何内容。当您遍历城市列表时,该城市就是每个城市

【讨论】:

  • 所以我放在那里没关系?我可以为 (Feature abc : 城市)... ?
  • 是的。它不重要
【解决方案2】:

编译器将它翻译成更有意义的东西。结果可能是这样的:

ListIterator<Feature> cityIterator = cities.listIterator();
while(cityIterator.hasNext()) {
 cityMarkers.add(new CityMarker(cityIterator.next());
}

使用: 的增强 for 循环语法只是更容易编写和阅读上述代码。

【讨论】:

    【解决方案3】:

    在循环中,您正在对城市进行迭代。 城市是您列表城市的一个元素。 在每次迭代中,列表的当前元素是城市。

    【讨论】:

      猜你喜欢
      • 2021-02-20
      • 1970-01-01
      • 2020-01-05
      • 1970-01-01
      • 2019-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多