split() 함수를 2번쓰면 2차원 배열이 만들어진다.

6971 단어 질문질문
public class StringTest4 {

	public static void main(String[] args) {
		String studentInfo = 
		"STUDENT_NO=STD-000001&NAME=김둘리&SCORE=83&MAJOR=컴퓨터 공학";
		String[] parameters = studentInfo.split("&");
		for (String parameter : parameters) {
			String[] param = parameter.split("=");
			if(param[0].equals("STUDENT_NO")) {
				System.out.println("학번(STUDENT_NO) : " + param[1]);
			} else if(param[0].equals("NAME")) {
				System.out.println("이름(NAME) : " + param[1]);
			} else if(param[0].equals("SCORE")) {
				System.out.println("점수(SCORE) : " + param[1]);
			} else if(param[0].equals("MAJOR")) {
				System.out.println("전공(MAJOR) : " + param[1]);
			}
		}
	}
}

  1. param[0] = {STUDENT_NO, NAME, SCORE, MAJOR}; 이지만
    split()을 연달아 두번 사용했으므로 첫번째 if문은 {STUDENT_NO, STD-000001김둘리} 로 시작한다.
    split()을 2번 사용해서 2차원 배열이 만들어졌는데, 키밸류 처럼 작동하기 때문이다.

  2. 두번째 스샷에서 param[1]이 한개만 출력된 이유는 print와 prinln의 차이에 의해서다.

좋은 웹페이지 즐겨찾기