본문 바로가기

IT自主学習 (2023.05.23~)/Java(2023.05.23~)

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

 二次元配列

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

例えば、通常の配列が二つあるとする。

 

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?"); }

  }
}