안녕하세요 알통몬입니다. 공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
배열 : 같은 타입의 데이터를 연속된 공간에 나열시키고, 각 데이터에 인덱스를 부여해 놓은 자료구조
예를 들어 학생 30명의 성적은 아래와 같이 scope 배열로 생성할 수 있습니다.
scope 배열
87 , 76 , 88 , 90 , ...., 97
인덱스 0 1 2 3 ...,29
scope 배열의 각 인덱스는 각 행목의 데이터를 읽거나, 저장하는데 사용되며 다음과 같이 배열이름 옆에 대괄호에 기입합니다.
scope[인덱스]
학생들의 성적 평균 예제)
int sum = 0;
for(int i = 0;i<30;i++){
sum += scope[i];
}
int avg = sum/30;
배열의 선언
먼저 배열 변수를 선언해야 합니다.
타입[] 변수; 또는 타입 변수[]; 대괄호는 배열 변수를 선언하는 기호로 사용되는데 타입 뒤에 붙을수도 있고 변수 뒤에 붙을 수도 있습니다.
배열 변수도 참조 변수에 속합니다. 배열도 객체 이므로 힙 영역에 생성되고
배열 변수는 힙 영역의 배열 객체를 참조하게 됩니다.
참조할 배열 객체가 없다면 null값으로 초기화될 수 있습니다.
배열 항목에 저장될 값의 목록이 있다면 아래와 같이 배열 객체를 만들 수 있습니다.
int scores[] = {1,2,3,4,5,6};
String names[] = {"알", "통", "몬"};
예제)
public class ArrayCreateByValueListExample1 {
public static void main(String[] args) {
int[] scores = { 83, 90, 87 };
System.out.println("scores[0] : " + scores[0]);
System.out.println("scores[1] : " + scores[1]);
System.out.println("scores[2] : " + scores[2]);
int sum = 0;
for(int i=0; i<3; i++) {
sum += scores[i];
}
System.out.println("총합 : " + sum);
double avg = (double) sum / 3;
System.out.println("평균 : " + avg);
}
}
주의하실 점은
타입[] 변수;
변수 = {값0,값1,.....}; // 컴파일 에러
배열 변수를 미리 선언한 후 값 목록들이 나중에 결정되는 상황이라면 아래와 같이 new 연산자를 사용해서 값 목록을 지정해주어야 합니다.
변수 = new 타입[]{값0,값1,값2,....};
ex)
String[] names = null;
names = new String[]{"알", "통", "몬"};
메소드의 매개값이 배열일 경우에도 마찬가지 입니다.
예제)
public class ArrayCreateByValueListExample2 {
public static void main(String[] args) {
int[] scores;
scores = new int[] { 83, 90, 87 };
int sum1 = 0;
for(int i=0; i<3; i++) {
sum1 += scores[i];
}
System.out.println("총합 : " + sum1);
int sum2 = add( new int[] { 83, 90, 87 } );
System.out.println("총합 : " + sum2);
System.out.println();
}
public static int add(int[] scores) {
int sum = 0;
for(int i=0; i<3; i++) {
sum += scores[i];
}
return sum;
}
}
'자바' 카테고리의 다른 글
JAVA 자바 배열 커맨드 라인 입력 main()메서드의 String args[] (0) | 2017.03.12 |
---|---|
JAVA 자바 배열 new 연산자로 배열 생성, 배열 길이 length (0) | 2017.03.12 |
JAVA 자바 String 타입 (0) | 2017.03.12 |
JAVA 자바 참조 변수의 ==, != 연산 / null과 NullPointerException (0) | 2017.03.12 |
자바 참조타입 데이터 분류 타입과 메모리 사용영역 (0) | 2017.03.09 |