👌

プログラミング自主学習 14日目 二次元配列

2023/06/15に公開

二次元配列

二次元配列とは配列を含めている配列のことである。配列がいくつか集まっている配列だと考えば良い。
例えば、通常の配列が二つあるとする。

String[] usernames = {"egoing", "jinhyuk", "youbin"};
String[] passwords = {"1111", "2222", "3333"};

二つの配列は独立されている状態である。
しかし、ログインシステムの場合、両方が必要になるため、
これら連関付けるにめ、2次元配列を使用することはできる。

String[][] users = { {"egoing", "1111"}, {"jinhyuk", "2222"}, {"youbin", "3333"} };

2次元配列では、1つ目のインデックスが行を、2つ目のインデックスが列を示している。
例えば、users[0][0] は最初の行の最初の列にある値"egoing"を指し、
users[0][1] は最初の行の2番目の列にある値"1111"を指す。

次は、実引数の要素が2つになったため、仮引数も2つに増やす。

public class AuthApp3 {
     public static void main(String[] args) {

<before>
String[] users={"egoing","jinhyuk","youbin"}
<after>
String[][] users={                     
{"egoing","1111"},
{"jinhyuk","2222"},
{"youbin","3333"}
};

String inputId= args[0];
String inputPass= args[1];  

boolean Islogined = false;
  }
}

最後は変数と条件を修正する。

public class AuthApp3 {
     public static void main(String[] args) {

<before>
String[] users={"egoing","jinhyuk","youbin"}
<after>
String[][] users={                     
{"egoing","1111"},
{"jinhyuk","2222"},
{"youbin","3333"}
};

String inputId= args[0];
String inputPass= args[1];  

boolean Islogined = false;
for(int i=0; i<users.length;i++){
String[] Current = users[i];    String Current = users[i];
if(Current[0].equals(inputID)&&Current[1].equals.(inputPass)){    if(CurrentID.equals(inputID);
Islogined= true;break;
}

}
System.out.println("Hi,"); if(isLogined)
{ System.out.println("Master!"); }
else
{System.out.println("Who are you?"); }

  }
}	

Discussion