자바

JAVA 자바 배열 new 연산자로 배열 생성, 배열 길이 length

알통몬_ 2017. 3. 12. 18:53
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

값의 목록을 미리 가지고 있지만 향후 값들을 저장할 배열을 미리 만들고 싶다면 new 연사자로 아래와 같이 배열 객체를 생성시킬 수 있습니다.

타입[] 변수 = new 타입[길이];

ex) int[] intArray = new int[10]; // 길이가 10인 int[] 배열

new 연산자로 배열을 처음 생성하면 배열은 자동적으로 기본값으로 초기화됩니다.

타입별 배열의 초기 값

분류                       데이터 타입               초기값

                            byte[]                       0

                            char[]                   '\u0000'

기본타입(정수)            short[]                      0

                            int[]                         0

                            long[]                      0L


기본타입(실수)           float[]                      0.0F

                           double[]                   0.0

기본타입(논리)           boolean[]                 false

참조타입                 클래스[]                   null

                          인터페이스[]              null


배열의 scopes의 0,1,2 인덱스에 10,20,30을 저장하는 코드

ex)

int[] scopes = new int[3];

scopes[0] = 10;

scopes[1] = 20;

scopes[2] = 30;


예제)

public class Example {

public static void main(String[] args) {

int[] arr1 = new int[3];

for(int i=0; i<3; i++) {

System.out.println("arr1[" + i + "] : " + arr1[i]);

}

arr1[0] = 10;

arr1[1] = 20;

arr1[2] = 30;

for(int i=0; i<3; i++) {

System.out.println("arr1[" + i + "] : " + arr1[i]);

}

double[] arr2 = new double[3];

for(int i=0; i<3; i++) {

System.out.println("arr2[" + i + "] : " + arr2[i]);

}

arr2[0] = 0.1;

arr2[1] = 0.2;

arr2[2] = 0.3;

for(int i=0; i<3; i++) {

System.out.println("arr2[" + i + "] : " + arr2[i]);

}

String[] arr3 = new String[3];

for(int i=0; i<3; i++) {

System.out.println("arr3[" + i + "] : " + arr3[i]);

}

arr3[0] = "1월";

arr3[1] = "2월";

arr3[2] = "3월";

for(int i=0; i<3; i++) {

System.out.println("arr3[" + i + "] : " + arr3[i]);

}

}

}



배열 길이 : 배열에 저장할 수 있는 전체 항목 수

 배열의 길이를 얻으려면 => 배열변수.length <= 읽기 전용, 값 변경 불가.



for문을 사용해서 배열 전체를 루핑할 때 매우 유용.

예제)

public class Example {

public static void main(String[] args) {

int[] scores = { 83, 90, 87 };

int sum = 0;

for(int i=0; i<scores.length; i++) {

sum += scores[i];

}

System.out.println("총합 : " + sum);

double avg = (double) sum / scores.length;

System.out.println("평균 : " + avg);

}




반응형