728x90
배열 (Array)
배열은 같은 타입의 변수들로 이루어진 집합을 의미합니다.
배열의 3요소
- 서로 관련된 데이터
- 데이터들의 자료형이 일치
- 데이터들의 개수를 알고있어야 함(공간의 크기를 알아야함)
1차원 배열
1차원 배열은 가장 기본적인 배열로 다음과 같은 문법에 따라 선언합니다.
// 선언
1. 자료형[] 배열이름;
2. 자료형 배열이름[];
// 생성
배열이름 = new 자료형[배열길이];
// 선언과 생성
자료형[] 배열이름 = new 자료형[배열길이];
다차원 배열
다차원 배열이란 2차원 이상의 배열을 의미하며, 배열 요소로 또 다른 배열을 가지는 배열을 의미합니다. 2차원 배열은 다음과 같은 문법으로 선언할 수 있습니다.
// 선언
자료형[][] 배열이름;
자료형 배열이름[][];
자료형[] 배열이름[];
실습
시험 정보
package class02;
public class Test02 {
public static void main(String[] args) {
// 평균점수
// 평균을 넘긴 학생수
// 6등의 번호
// 짝수번째 학생들의 총점
// 평균을 못 넘긴 학생들의 번호
int[] stu = new int[6];
stu[0] = 29;
stu[1] = 99;
stu[2] = 30;
stu[3] = 22;
stu[4] = 87;
stu[5] = 57;
// 총 점수 합
int sum = 0;
for (int i = 0; i < stu.length; i++) {
sum += stu[i];
}
// 평균 점수
double avg = sum * 1.0 / stu.length;
// 평균을 넘긴 학생 수
int overAvg = 0;
// 짝수번째 학생들의 총점
int evenSum = 0;
// 6등의 번호
int min = stu[0];
int minIndex = 0;
for (int i = 0; i < stu.length; i++) {
// 평균을 넘긴 학생 수
if (stu[i] > avg) {
overAvg++;
}
// 짝수번쨰 학생들의 총점
if ((i + 1) % 2 == 0) {
evenSum += stu[i];
}
// 6등의 번호
if (stu[i] < min) {
min = stu[i];
minIndex = i;
}
}
System.out.println("평균 점수 : " + avg);
System.out.println("평균을 넘긴 학생 수 : " + overAvg);
System.out.println("6등의 번호 : " + (minIndex + 1));
System.out.println("짝수번째 학생들의 총점 : " + evenSum);
// 평균을 못 넘긴 학생들의 번호
System.out.print("평균을 못 넘긴 학생 번호 : ");
for (int i = 0; i < stu.length; i++) {
if (stu[i] < avg) {
System.out.print((i + 1) + "번 ");
}
}
}
}
실행결과
GitHub
https://github.com/Qkrwnsgus0522/Java
728x90