2014年01月15日
JavaEEの前に復習をしてみる その7 配列とfor文
私が、Javaの勉強を始めた時は、何かとRPGの処理に例える。
といった感じで遊びの中で学習していきました。
Java SE Silverの知識をさくっと頭に入れられたのは、
根底にJavaの知識があったからで、資格勉強から始めていたら、
プログラミングは挫折していたでしょう。。。
というわけで、今回は、for文と、配列を使ったプログラム。
道具屋で、薬草を10個買います。
そして、その薬草を道具箱にしまっていく。というイメージ。
String toolbox1 = "薬草0";
String toolbox2 = "薬草1";
String toolbox3 = "薬草2";
String toolbox4 = "役僧3";
・
・
・
とかやっていると、10くらいは頑張れますが、誤字脱字や、
やたらtoolboxが増えて、道具一個しか走らない道具箱10個を抱えて
勇者は冒険に旅立ちます。箱10個引きずった勇者は、かっこよくないですねw
【イメージ図】勇者_[1][1][1][1][1][1][1][1][1][1]
箱を一つにするには、配列という方法ですっきりさせます。
String[] toolbox = new String[10];
上記のように書くことで、文字列型のtoolboxに0から10個の配列を与えます。
一個の箱に、10個入るよう仕切りを付けたような形ですね。
[0|1|2|3|4|5|6|7|8|9]
左から2個目に薬草を入れるのであれば、
toolbox[1] = "薬草";
これでOKです。
よし、10個入る道具箱ができたぞ!
それでは、10個薬草をしまっていくか・・・
toolbox[0] = "薬草";
toolbox[1] = "薬草";
toolbox[2] = "役僧";
・
・
ちょっと待った!!変わってないじゃないかww
道具箱にポンっと置いたら自動的に10個並べたい。
そういう時は、for文で処理させましょう。
for (int i=0; i < toolbox. length; i++){
toolbox[i] = "薬草" +i;
}
ここで言う iは、10回処理させるため専用の変数。
toolbox. lengthは、toolbox自体の宣言した値の最大値。
i++は、for文が一回回ったら、iに1ずつ加算される。
これで10回まわります。
そして、for文の中にはtoolbox[i]に薬草+iが代入される処理が含まれているので、
1回for文が回るごとに、toolboxのそれぞれの領域に、薬草がしまわれている。
プログラムは、これだけ。
package test;
public class Tools {
public static void main (String [] args){
String[] toolbox = new String[10];
for (int i=0; i < toolbox. length; i++){
toolbox[i] = "薬草" +i;
System. out .println(toolbox[i]);
}
}
}
結果。
わかりやすくするため、薬草に番号を付けてその場で出力もさせちゃう。
薬草0
薬草1
薬草2
薬草3
薬草4
薬草5
薬草6
薬草7
薬草8
薬草9
これで、ループ文と配列を思い出しました。
まだ、JavaEEにいくには、長いね・・・。
ちなみに、下記がカッコいいと言っているわけではありませんw
【イメージ図】勇者_[0|1|2|3|4|5|6|7|8|9]
といった感じで遊びの中で学習していきました。
Java SE Silverの知識をさくっと頭に入れられたのは、
根底にJavaの知識があったからで、資格勉強から始めていたら、
プログラミングは挫折していたでしょう。。。
というわけで、今回は、for文と、配列を使ったプログラム。
道具屋で、薬草を10個買います。
そして、その薬草を道具箱にしまっていく。というイメージ。
String toolbox1 = "薬草0";
String toolbox2 = "薬草1";
String toolbox3 = "薬草2";
String toolbox4 = "役僧3";
・
・
・
とかやっていると、10くらいは頑張れますが、誤字脱字や、
やたらtoolboxが増えて、道具一個しか走らない道具箱10個を抱えて
勇者は冒険に旅立ちます。箱10個引きずった勇者は、かっこよくないですねw
【イメージ図】勇者_[1][1][1][1][1][1][1][1][1][1]
箱を一つにするには、配列という方法ですっきりさせます。
String[] toolbox = new String[10];
上記のように書くことで、文字列型のtoolboxに0から10個の配列を与えます。
一個の箱に、10個入るよう仕切りを付けたような形ですね。
[0|1|2|3|4|5|6|7|8|9]
左から2個目に薬草を入れるのであれば、
toolbox[1] = "薬草";
これでOKです。
よし、10個入る道具箱ができたぞ!
それでは、10個薬草をしまっていくか・・・
toolbox[0] = "薬草";
toolbox[1] = "薬草";
toolbox[2] = "役僧";
・
・
ちょっと待った!!変わってないじゃないかww
道具箱にポンっと置いたら自動的に10個並べたい。
そういう時は、for文で処理させましょう。
for (int i=0; i < toolbox. length; i++){
toolbox[i] = "薬草" +i;
}
ここで言う iは、10回処理させるため専用の変数。
toolbox. lengthは、toolbox自体の宣言した値の最大値。
i++は、for文が一回回ったら、iに1ずつ加算される。
これで10回まわります。
そして、for文の中にはtoolbox[i]に薬草+iが代入される処理が含まれているので、
1回for文が回るごとに、toolboxのそれぞれの領域に、薬草がしまわれている。
プログラムは、これだけ。
package test;
public class Tools {
public static void main (String [] args){
String[] toolbox = new String[10];
for (int i=0; i < toolbox. length; i++){
toolbox[i] = "薬草" +i;
System. out .println(toolbox[i]);
}
}
}
結果。
わかりやすくするため、薬草に番号を付けてその場で出力もさせちゃう。
薬草0
薬草1
薬草2
薬草3
薬草4
薬草5
薬草6
薬草7
薬草8
薬草9
これで、ループ文と配列を思い出しました。
まだ、JavaEEにいくには、長いね・・・。
ちなみに、下記がカッコいいと言っているわけではありませんw
【イメージ図】勇者_[0|1|2|3|4|5|6|7|8|9]