Java はじめて 11 〜ループ処理A: for文2 拡張for文〜

今回は、拡張for文の書き方をやります。書き方は以下のようになります。

for (取り出した変数 : 配列などの変数) {
    // 何かしらの処理
}

前回のfor文

前回やったfor文は昔からあるもので、色んな事に使用できます。下のような書き方です。

for (初期化 ; ループ条件 ; ループする時の処理) {
   // 何かしらの処理
}

拡張for文

一言で言えば使いやすい、なのですが、それは配列やリストをループする時の話です。使い方次第では色んなことができると思います。実際に使用できるサンプルコードを下に示します。

配列

public static void main(String[] args) {
   String[] arr = new String[]{"一郎", "二郎", "三郎"};
   for (String name : arr) {
      System.out.println("私の名前は、" + name + "です");
   }
}

こんな感じです。ちなみにリストでやる場合も同じような形です。

List

public static void main(String[] args) {
   List<String> list = new ArrayList<String>;
   list.add("一郎");
   list.add("二郎");
   list.add("三郎");
   for (String name : list) {
      System.out.println("私の名前は、" + name + "です");
   }
}

ラムダ式

public static void main(String[] args) {
   List<String> list = new ArrayList<String>;
    List list = new ArrayList<>();
    list.add("一郎");
    list.add("二郎");
    list.add("三郎");
    // ここがラムダ式
    list.forEach(System.out::println);
} 

問題

for文を一回使用して、コンソール出力にて下のような絵を描画してください。「*(アスタリスク)」を使って描画します。
上から順にアスタリスクが1個, 2個, 3個, 4個, 5個, 6個と並んでいます。

*
**
***
****
*****
******

でわでわ。。。