Do it 자바 프로그래밍 입문 [배열과 ArrayList]

wish17·2022년 10월 28일
0

Do it 자바

목록 보기
3/10
post-thumbnail

배열과 ArrayList

배열 선언하기

  • 자료형[] 배열이름 = new 자료형[개수];
    int[] arr = new int[10];
  • 자료형 배열이름[] = new 자료형[개수];
    int arr[] = new int[10];

메모리 구조

배열 초기화

  • 배열은 선언과 동시에 초기화 할 수 있다.
  • 배열을 초기화 할 때는 배열의 개수를 명시하지 않는다.
int[] studentIDs = new int[10]					//배열을 선언할 땐 배열의 길이를 명시
int[] studentIDs = new int[] {101, 102, 103};	//선언과 동시에 초기화 할 땐 개수 생략
int[] studentIDs = new int[3] {101, 102, 103};	//이렇게 개수 넣으면 오류 발생
int[] studentIDs = {101, 102, 103};				//new를 안써도 int형 요소가 3개인 배열 생성

배열을 선언할 땐 배열의 길이를 반드시 명시해야 하고, 선언과 동시에 초기화할 때에는 개수를 생략해야 한다. 선언과 동시에 초기화할 땐 new 키워드를 쓰지 않아도 해당 길이만큼의 배열이 선언된다.

선언 이후에 초기화를 따로 할 때는 아래와 같이 작성하면 된다.

int[] numbers = new int[3];
numbers[0] = 1;
numbers[1] = 2;
numbers[2] = 3;

아무런 초기화 값이 없이 선언만 한 경우, 정수는0, 실수는 0.0 객체배열은 null로 초기화 됨

=> 배열을 선언하고 초기화를 따로 하지 않으면 기본값으로 배열이 초기화 된다.
(int형은 0, double형은 0.0, 객체 배열은 null로 초기화가 된다.)

배열 사용

[] : (인덱스 혹은 첨자 연산자)

  • 배열의 위치를 지정하여 자료를 가져온다.
  • 모든 배열의 순서는 0부터 시작한다.
  • n개 배열은 0 부터 n-1 위치까지 자료가 존재한다.

배열의 길이와 유효한 요소 값

배열의 길이의 속성: length

자료가 있는 요소만 출력 하려면 크기에 대한 저장을 따로 해야 함
(아래 예제에서 전체 길이로 곱하기를 하면 값은 아래처럼 0.0이 되어 버림)

package array;

public class ArrayTest2 {

	public static void main(String[] args) {

		double[] num = new double[5]; // double형으로 길이5인 배열 선언
		num[0] = 10.0;
		num[1] = 20.0;
		num[2] = 30.0;
		
		double total = 1;
    	for(int i=0; i<num.length; i++) { //num.length = 천체 배열 길이만큼 반복
            total *= num[i];
		}
    	
    	System.out.println(total);
    }
}

0이 나오는 이유는 아래처럼 3,4번째 값이 0.0이기 때문

package array;

public class ArrayTest2 {

	public static void main(String[] args) {

		double[] num = new double[5];
		num[0] = 10.0;
		num[1] = 20.0;
		num[2] = 30.0;
		
    	for(int i=0; i<num.length; i++) {
            System.out.println("num[" + i + "] = " + num[i]);
		}
    }
}

0개의 댓글