배열의 사전적 의미 : 동일한 타입의 데이터가 일정한 순서로 모여 있는 것
4.1.1 배열의 필요성
시험에 응시한 다섯 학생의 총점과 평균 점수 출력 프로그램
package sr.test;
public class ArrayTest1 {
public static void main(String[] args) {
int kimScore =76;
int PartScore=92;
int leeScore=49;
int choiScore=78;
int pyoScore=83;
int sum=kimScore+PartScore+leeScore+choiScore+pyoScore;
double avg=(double) sum/5;
System.out.println("총점 : " +sum);
System.out.println("평균 : " +avg);
}
}

만약 시험에 읏시한 학생 수가 늘어서 1000명의 합과 평균을 출력해야 한다고 가정하면, 1000개의 변수가 필요할 것이고, 중복되지 않는 1000개의 변수를 선언하는 데에 많은 시간과 노력이 필요할 것이다.
학생들이 획득한 점수의 총합과 평균을 구하는 것이 목적이므로 중복되지 않는 변수는 의미가 없다.
이런 상황에서 배열은 매우 적절한 해결 방법이 될 수 있다.
배열은 동일한 타입의 데이터를 한 곳에 모으고, 순차적으로 처리할 목적으로 사용하는 데이터의 집합이다.
자바에서는 이런 데이터의 집합을 컬렉션(collection)이라고 한다.
자바는 배열을 객체라는 독특한 타입의 데이터로 취급하며, 이를 참조 타입이라고도 한다.
배열 객체를 생성하기 위한 문법
new 데이터타입[배열 크기];
각 객체는 고유한 메모리 주소를 갖는다. 그런데 프로그램에서 객체를 사용하기 위해 객체들의 메모리 위치를 외워서 사용하는 것은 불가능하다.
따라서 메모리 주소를 사람이 기억할 수 있는 참조 변수라는 것에 할당하고, 이 참조 변수를 통해 메모리상의 객체를 사용하는 것이다.
참조 변수를 선언하는 문법
데이터타입[] 참조변수;
참조 변수에 실제로 배열 객체의 주소를 할당하기 위한 문버버
참조 변수 = new 데이터타입[배열크기];
데이터 타입[] 참조변수 = new 데이터타입[배열크기];
배열 객체를 생성하면서 동시에 초기화까지 처리할 수 있다.
int[] scoreList={76,92,49,83,100};
확장 for문
for(데이터타입 참조변수 : 배열참조변수
배열에 저장된 점수의 최고점수, 최저 점수, 점수 총합, 점수 평균을 출력하는 프로그램>
package sr.test;
public class ArrayTest7 {
public static void main(String[] args) {
int[] scoreList= {76,92,49,78,83};
int maxScore=0;
int minScore=100;
int sumScore=0;
int avgScore=0;
for(int i=0;i<scoreList.length;i++) {
if (minScore > scoreList[i]) {
minScore=scoreList[i];
}
if(maxScore<scoreList[i]) {
maxScore=scoreList[i];
}
sumScore+=scoreList[i];
}
avgScore=sumScore/scoreList.length;
System.out.println("최고 점수 : "+maxScore);
System.out.println("최저 점수 : "+minScore);
System.out.println("점수 총합 : "+sumScore);
System.out.println("점수 평균 : "+avgScore);
}
}

'개인 공부 > 자바&Oracle' 카테고리의 다른 글
| [Java] 난수 2가지 방법 - Random의 nextInt(), Math.random (0) | 2023.09.15 |
|---|---|
| 23.09.03 자바 복습 (0) | 2023.09.04 |