2014年01月16日
JavaEEの前に復習をしてみる その8 2次元配列
勇者さんの道具箱は10個まででも良いとして、
街の商人さんの道具箱は100個くらいは入ってほしいです。
商人さんも、100個入れられる道具箱を作りましょう。
String[] toolbox = new String[100];
できたー!!
でも、この道具箱使いづらくないか?
[薬草|薬草|薬草|薬草|毒消草|毒消草|毒消草|毒消草|毒消草|毒消草|聖水|聖水|薬草|薬草|・・・・・・]
横一列に100個仕切りがあるのです。
凄い横長の店舗を構えなければなりませんし。一つの仕切りが30cmだったとしても、
一番端から端まで30mはあります。
えーと、聖水どこにあったっけ・・・。
あれ、薬草がこんなところにもあった!げ、消費期限きれてる!!
まんげつ草?あったかな、げ、一番端だ!お客様、しばらくお待ちください・・・!!
道具屋さんの道具箱は整理整頓できる棚のようなものがいいですね。
たとえば、10×10のカラーボックスのようなものに、
一番上は薬草、2段目は毒消し草としたらどうでしょう。
先ほどよりは、わかりやすいですね。
では、商人さんのために作っていきます。
前回の応用で、配列を2次元配列に置き換えます。
書き方は結構シンプルで、
String[][] toolbox = new String[10][10];
これだけ。[]が一個増えただけです。
0[0|1|2|3|4|5|6|7|8|9]
1[0|1|2|3|4|5|6|7|8|9]
2[0|1|2|3|4|5|6|7|8|9]
3[0|1|2|3|4|5|6|7|8|9]
4[0|1|2|3|4|5|6|7|8|9]
5[0|1|2|3|4|5|6|7|8|9]
6[0|1|2|3|4|5|6|7|8|9]
7[0|1|2|3|4|5|6|7|8|9]
8[0|1|2|3|4|5|6|7|8|9]
9[0|1|2|3|4|5|6|7|8|9] 商人
こんな大きな棚ができてしまいました。
急に立派になりました。商人さん、上の段まで手が届きませんww
if文を使えばもっとシンプルに書けますが、わかりやすくするため、
それぞれをfor文で処理してみました。
package test;
public class Tools2 {
public static void main (String [] args){
int yakusou = 5;
int dokukeshi = 3;
int seisui = 8;
String[][] toolbox = new String[10][10];
for (int i=0; i < yakusou; i++){
toolbox[0][i] = "薬草" +i+" " ;
}
for (int i=0; i < dokukeshi; i++){
toolbox[1][i] = "毒消草" +i+" " ;
}
for (int i=0; i < seisui; i++){
toolbox[2][i] = "聖水" +i+" " ;
}
for (int i=0; i < toolbox. length; i++){
for (int j=0; j <= 9; j++){
System. out .print(toolbox[i][j]+" " );
}
System. out .println("" );
}
}
}
結果は、
薬草0 薬草1 薬草2 薬草3 薬草4 null null null null null
毒消草0 毒消草1 毒消草2 null null null null null null null
聖水0 聖水1 聖水2 聖水3 聖水4 聖水5 聖水6 聖水7 null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
これで整理整頓できました。よく使うものは下の段から入れてよ。
と商人さんから文句を言われたのは言うまでもありません。
街の商人さんの道具箱は100個くらいは入ってほしいです。
商人さんも、100個入れられる道具箱を作りましょう。
String[] toolbox = new String[100];
できたー!!
でも、この道具箱使いづらくないか?
[薬草|薬草|薬草|薬草|毒消草|毒消草|毒消草|毒消草|毒消草|毒消草|聖水|聖水|薬草|薬草|・・・・・・]
横一列に100個仕切りがあるのです。
凄い横長の店舗を構えなければなりませんし。一つの仕切りが30cmだったとしても、
一番端から端まで30mはあります。
えーと、聖水どこにあったっけ・・・。
あれ、薬草がこんなところにもあった!げ、消費期限きれてる!!
まんげつ草?あったかな、げ、一番端だ!お客様、しばらくお待ちください・・・!!
道具屋さんの道具箱は整理整頓できる棚のようなものがいいですね。
たとえば、10×10のカラーボックスのようなものに、
一番上は薬草、2段目は毒消し草としたらどうでしょう。
先ほどよりは、わかりやすいですね。
では、商人さんのために作っていきます。
前回の応用で、配列を2次元配列に置き換えます。
書き方は結構シンプルで、
String[][] toolbox = new String[10][10];
これだけ。[]が一個増えただけです。
0[0|1|2|3|4|5|6|7|8|9]
1[0|1|2|3|4|5|6|7|8|9]
2[0|1|2|3|4|5|6|7|8|9]
3[0|1|2|3|4|5|6|7|8|9]
4[0|1|2|3|4|5|6|7|8|9]
5[0|1|2|3|4|5|6|7|8|9]
6[0|1|2|3|4|5|6|7|8|9]
7[0|1|2|3|4|5|6|7|8|9]
8[0|1|2|3|4|5|6|7|8|9]
9[0|1|2|3|4|5|6|7|8|9] 商人
こんな大きな棚ができてしまいました。
急に立派になりました。商人さん、上の段まで手が届きませんww
if文を使えばもっとシンプルに書けますが、わかりやすくするため、
それぞれをfor文で処理してみました。
package test;
public class Tools2 {
public static void main (String [] args){
int yakusou = 5;
int dokukeshi = 3;
int seisui = 8;
String[][] toolbox = new String[10][10];
for (int i=0; i < yakusou; i++){
toolbox[0][i] = "薬草" +i+" " ;
}
for (int i=0; i < dokukeshi; i++){
toolbox[1][i] = "毒消草" +i+" " ;
}
for (int i=0; i < seisui; i++){
toolbox[2][i] = "聖水" +i+" " ;
}
for (int i=0; i < toolbox. length; i++){
for (int j=0; j <= 9; j++){
System. out .print(toolbox[i][j]+" " );
}
System. out .println("" );
}
}
}
結果は、
薬草0 薬草1 薬草2 薬草3 薬草4 null null null null null
毒消草0 毒消草1 毒消草2 null null null null null null null
聖水0 聖水1 聖水2 聖水3 聖水4 聖水5 聖水6 聖水7 null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
null null null null null null null null null null
これで整理整頓できました。よく使うものは下の段から入れてよ。
と商人さんから文句を言われたのは言うまでもありません。