反復処理 – Dart逆引きリファレンス

2012.04.12

反復処理(Iterators)

配列を反復処理したい

おなじみの「for」文を使用します。

List makers = ['mazda', 'toyota', 'subaru', 'suzuki', 'nissan', 'daihatsu', 'honda'];
for (int i = 0; i < makers.length; i++) {
  print(makers[i]);
}
[/javascript]
<h3 id="item_02">反復処理で配列内のオブジェクトを手軽に参照したい</h3>
<p>「<strong>for-in</strong>」文を使用します。</p>

List makers = ['mazda', 'toyota', 'subaru', 'suzuki', 'nissan', 'daihatsu', 'honda'];
for (String maker in makers) {
  print(maker);
}

Listクラスのインスタンスが持つ「forEach」メソッドを使用することもできます。

List makers = ['mazda', 'toyota', 'subaru', 'suzuki', 'nissan', 'daihatsu', 'honda'];
makers.forEach((String maker) {
  print(maker);
});

連想配列を反復処理したい

配列同様に「for-in」文を使用します。

Map map = {
  'Company': 'Classmethod, Inc.',
  'Postal Code': '162-0822',
  'Prefecture': 'Tokyo',
  'City': 'Shinjuku',
  'Further Divisions': '2-26 Shimomiyabicho'
};
for (String key in map.getKeys()) {
  print('$key, ${map[key]}');
}

Mapクラスのインスタンスが持つ「forEach」メソッドを使用することもできます。

Map map = {
  'Company': 'Classmethod, Inc.',
  'Postal Code': '162-0822',
  'Prefecture': 'Tokyo',
  'City': 'Shinjuku',
  'Further Divisions': '2-26 Shimomiyabicho'
};
map.forEach((String key, String value) {
  print('$key, $value');
});