✅ 오전 수업 요약
strArray[0] = "Java";
strArray[2] = new String("Java");
- == : 주소(참조) 비교
- .equals() : 문자열 내용 비교
- 결과:
- strArray[0] == strArray[1] → true
- strArray[0] == strArray[2] → false
- strArray[0].equals(strArray[2]) → true
2. 향상된 for문 (for-each)
int[] x = {95, 71, 84, 93, 87};
for (int y : x) sum += y;
String str1 = args[0];
int num1 = Integer.parseInt(str1);
- 실행 시 인자 2개 필요
- 두 정수의 합 계산 및 출력
- 입력값 없을 경우 종료 처리
✅ 오후 수업 요약 (실습 중심)
1. mission6 - 2차원 배열 구조 확인
static void mission6() {
int[][] array = { { 95, 86 }, { 83, 92, 96 }, { 78, 83, 93, 87, 88 } };
System.out.println("배열의 줄 : " + array.length);
for (int i = 0; i < array.length; i++)
System.out.println((i + 1) + "번째 배열의 칸 : " + array[i].length);
}
int[][] array = { {95, 86}, {83, 92, 96}, {78, 83, 93, 87, 88} };
- .length로 줄(행) 수와 칸(열) 수 확인
- 출력 예:
배열의 줄 : 3
1번째 배열의 칸 : 2
2. mission7 - 최대값 구하기
static void mission7() {
int array[] = { 1, 5, 3, 8, 2 }, max = 0;
for (int num : array)
if (num > max)
max = num;
System.out.println("max num : " + max);
}
int[] array = {1, 5, 3, 8, 2};
3. mission8 - 2차원 배열 총합 및 평균
static void mission8() {
int array[][] = { { 95, 86 }, { 83, 92, 96 }, { 78, 83, 93, 87, 88 } }, sum = 0, count = 0;
for (int i = 0; i < array.length; i++) {
count += array[i].length;
for (int j = 0; j < array[i].length; j++)
sum += array[i][j];
}
System.out.println("점수의 전체 합 : " + sum);
System.out.println("점수 전체의 평균 : " + (double) sum / count);
}
sum += array[i][j];
count += array[i].length;
4. mission9 - 학생 점수 관리 프로그램
static void mission9() {
Scanner sc = new Scanner(System.in);
String str;
int count = 0, scores[] = null, sum = 0;
while (true) {
System.out.println("-".repeat(40));
System.out.println("1. 학생수 | 2. 점수입력 | 3. 점수리스트 | 4. 분석 | 5. 종료");
System.out.println("-".repeat(40));
System.out.print("선택> ");
str = sc.nextLine();
if (str.equals("1")) {
System.out.print("학생수> ");
str = sc.nextLine();
count = Integer.parseInt(str);
scores = new int[count];
} else if (str.equals("2")) {
if (scores == null) {
System.out.println("현재 정해진 학생 수가 없습니다.");
continue;
}
for (int i = 0; i < scores.length; i++) {
System.out.print("scores[" + i + "]>");
str = sc.nextLine();
count = Integer.parseInt(str);
scores[i] = count;
}
} else if (str.equals("3")) {
for (int i = 0; i < scores.length; i++)
System.out.println("scores[" + i + "] : " + scores[i]);
} else if (str.equals("4")) {
for (int i : scores) {
if (i > count)
count = i;
sum += i;
}
System.out.println("최고 점수 : " + count);
System.out.println("평균 점수 : " + (double) sum / scores.length);
} else if (str.equals("5"))
break;
}
System.out.println("프로그램 종료");
}
- 메뉴 기능 구성:
- 학생 수 설정
- 점수 입력
- 점수 출력
- 최고 점수 및 평균 분석
- 종료
- 입력/출력 및 예외 처리 포함
🧠 9일차 핵심 요약표
주제 |
내용 |
문자열 비교 |
== (참조), .equals() (내용) |
향상된 for문 |
배열 반복 간단화 |
main 인자 |
외부 입력값 처리 및 타입 변환 |
2차원 배열 |
구조 확인, 평균 계산 |
실습 문제 |
최대값, 총합, 점수 분석 프로그램 구현 |