for文を使う

id:regasuieJavaの勉強を始めた。正確に言うと再開か?そんなわけでブログに自分の解答を書きつつ俺に見てもらいたいらしい。
前のやつはコメントに書いたけど、このままだとあまりにも量が増えすぎるのでトラックバックで書くことにした。

次のように画面に出力するコードを記述してください。

**

***

****

*****

俺の解答

class Sample {

	public static void main(String args[]) {

		String ast = "";
		for (int i = 0; i < 5; i++) {
			ast += "*";
			System.out.println(ast);
		}
	}
}

どうかな?違うところは、

  • 文字列の生成を、毎回作り直すのではなく前回の文字列に1つ追加することで実現する。よってfor文の入れ子が不要になり、わかりやすいコードとなる。
  • for文の始まりが「0」で、条件から「=」が無くなっている。効果は同じだが、for文は「0」から始めるのが慣例のようになっているため、こちらの記述に慣れておいたほうが良いと思う。今後、配列やArrayListクラスを使用する際にどうせこの記述になると思うから。

参考になったかな?
あと、今度からはもうちょっとマトモなクラス名にして欲しいな。そうしたほうが自分で勉強の軌跡を後から見返せるし、名前を付ける勉強にもなる。良い名前を付けることは良いJava技術者の必須だとおもうから、最初から悩んでつける癖をつけておいたほうが良いよ。今回なら、PrintAsteriskLineとかかな?

ちなみに、英語のつづりが不安ならここで探せば良いと思うよ。
http://www.alc.co.jp/index.html
自分でもわからないような難しい英語は使わないようにね…w