アフィリエイト広告を利用しています


スキル無しのシステムインストラクターから、システムエンジニアへの転身日記。
◇◆◇ 2013年取得資格
LPICレベル1
LPICレベル2
LPICレベル3 Core
LPICレベル3 Speciality 302
LPICレベル3 Speciality 303
LPICレベル3 Speciality 304

Cisco CCENT
Cisco CCNA

Java SE 7 Silver
Java SE 7 GOLD

OSS-DB Silver

◇◆◇ 2014年取得資格
HTML5 Professional レベル1

広告

posted by fanblog

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


これで整理整頓できました。よく使うものは下の段から入れてよ。
と商人さんから文句を言われたのは言うまでもありません。


トラックバック

この記事へのトラックバックURL
※ブログオーナーが承認したトラックバックのみ表示されます。
https://fanblogs.jp/tb/2006069

コメント

お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのコメント

Ordre Tramadol |2021年09月12日(Sun) 05:57
おはようございまーす!
自分だけのコードだからやってしまいます。
Ijkl…。xyz…。他人から見たら、iってなんじゃい。って話なので工夫しなければいけませんよね。

たしかに、コードの使い回しは多くなるかも。オブジェクト指向で解決できるものは、
極力、Javaらしいコーディングができるように意識したいです。
|2014年01月25日(Sat) 10:56
Shade さん

こんばんはっ Habitat ですっ

2次元配列・・ よく間違えますww
for 文がネストすると、変数が i,j,k,l・・

まぁよく使って 3次元の変数 k ぐらいですが、
配列指定の変数書き間違いがバグでは結構出やすいとこですねっ

というのも、どうしても書くPGがでかくなってくると、
コードのコピーの使い回しがでて、それを貼り付け先での
ニーズにあわすのが不完全だったりするんですよね。。

もう、考えるのめんどくさくてデバッグでブレークポイントで止めて確認しちゃうけどねっ
Habitat |2014年01月19日(Sun) 22:25
×

この広告は30日以上新しい記事の更新がないブログに表示されております。

Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: