JAVA制御文-総合応用


総合応用課1
ユーザーが正しいIDを入力したときにログインできるアプリケーションの作成


public class AuthApp3 {

	public static void main(String[] args) {
		
		String[] users = {"egoing", "jinhuck", "yubin"}; // String타입의 배열, 변수이름은 users
		String inputId = args[0]; // argument로 입력한 String타입의 변수이름은 inputId
		
		boolean isLogined = false; // boolean타입의 변수이름은 isLogined, 아직 로그인하지 않았기에 false
		for(int i=0; i<users.length; i++) {
			String currentId = users[i];
			if(currentId.equals(inputId)) { // currentId와 inputId를 equals메소드를 이용해 비교
				isLogined = true;
				break;
			} 
		}
		
		System.out.println("Hi,");
		if(isLogined) {
			System.out.println("Master!!");
		} else {
			System.out.println("Who are you?");
		}

	}

}

総合応用課2
有効IDとPasswordの入力時にログインするアプリケーション

public class AuthApp4 {

	public static void main(String[] args) {
		
//		String[] users = {"egoing", "jinhuck", "yubin"};
		String[][] users = { // 배열의 각 데이터 항목에 두개의 값을 지정해줌
				{"egoing", "1111"},
				{"jinhuck", "2222"},
				{"yubin", "3333"}
		};
		String inputId = args[0];
		String inputPass = args[1];
		
		boolean isLogined = false;
		for(int i=0; i<users.length; i++) {
			String[] current = users[i];
			if(
					current[0].equals(inputId) && 
					current[1].equals(inputPass) 					
			) {
				isLogined = true;
				break;
			} 
		}
		
		System.out.println("Hi,");
		if(isLogined) {
			System.out.println("Master!!");
		} else {
			System.out.println("Who are you?");
		}

	}

}
自分なりに作る
パラメータではなくjavaが提供する機能を使用してIDとPassword入力ウィンドウを呼び出します.
そしてログイン実行時に「Hi,ユーザId」を印刷する.
import javax.swing.JOptionPane;

public class MyAuthApp {

	public static void main(String[] args) {
		
		String[][] users = { 
				{"egoing", "1111"}, // users[0] - current[0], current[1]
				{"jinhuck", "2222"}, // users[1] - current[0], current[1]
				{"yubin", "3333"} // users[2] - current[0], current[1]
		};
		String inputId = JOptionPane.showInputDialog("Enter a Id"); // Id입력창 호출
		String inputPass = JOptionPane.showInputDialog("Enter a Password"); // PWD입력창 호출
		
		boolean isLogined = false; // 처음에는 로그인이 안된 상태
		for(int i = 0; i < users.length; i++ ) {
			String[] current = users[i];
			if(
					current[0].equals(inputId) && // inputId와 user배열의 current배열0번 체크
					current[1].equals(inputPass) // inputPass와 user배열의 current배열1번 체크
					) {
				isLogined = true; // 만약 맞다면
				break; // 반복멈추기
			} 
		}
		
		System.out.print("Hi, "); // 줄바꿈하지 않음
		if(isLogined) { // isLogined가 true이면
			System.out.println(inputId); // 로그인한 Id출력
			System.out.println("Have a nice day!");
		} else { // 만약 아니라면
			System.out.println("Who are you?");
		}

	}

}