JAVA 제어문 - 종합응용

황찬호·2021년 4월 8일
0

Java1

목록 보기
10/14

종합응용 수업 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?");
		}

	}

}

나만의 방식으로 만들기

argument대신 자바에서 제공하는 기능을 이용해 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?");
		}

	}

}
profile
되는대까지 해보기

0개의 댓글