반응형
배열의 초기화
배열을 초기화 할때,
int[] iArr1 = new int[] {100,95,80,70,60}으로도 초기화 할 수 있지만,
new int[]를 생략해
int[] iArr1 = {100,95,80,70,60}으로 초기화도 가능하다
하지만, 생성과 동시에 초기화 할 때만 가능하다
int[] iArr1;
int[] iArr1 = {100,95,80,70,60};
는 불가!
만약 매개변수로 int형 배열을 받는 add메소드가 정의되어 있다고 가정해보자.
ex) int add(int[] arr)
int result = add(new int[] {100,95,80,70,60}); -> 가능
int result = add( {100,95,80,70,60} ); -> 불가능
Arrays.toString(배열이름)메소드로 모든 요소를 [첫번째요소, 두번째요소...]와 같은 형식으로 출력
참조변수를 호출하면 배열의 주소가 출력
char배열을 호출하면 배열의 문자요소들이 붙어서 출력
예시
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
package array;
import java.util.Arrays;
public class ArrayEx2 {
public static void main(String[] args) {
// 배열 생성
int[] iArr1 = new int[10]; // 길이가 10인 int형 배열 생성
int[] iArr2 = new int[10];
// 배열 초기화
int[] iArr3 = new int[] {100,95,80,70,60};
int[] iArr4 = {100,95,80,70,60}; // new int[]생략하고 초기화가능
char[] chArr = {'a','b','c','d'}; // new char[]생략하고 초기화가능
for(int i=0; i<iArr1.length; i++) {
iArr1[i] = i + 1;
}
for(int i=0; i<iArr2.length; i++) {
iArr2[i] = (int)(Math.random()*10) + 1; // 1~10의 값을 배열에 저장
}
for(int i=0; i<iArr1.length; i++) {
System.out.print(iArr1[i] + ",");
}
System.out.println();
// toString()메소드로 출력하면 배열의 요소값들이 출력됨
System.out.println(Arrays.toString(iArr2));
System.out.println(Arrays.toString(iArr3));
System.out.println(Arrays.toString(iArr4));
System.out.println(Arrays.toString(chArr));
// 참조변수를 출력하면 주소가 표시됨
System.out.println(iArr2);
System.out.println(iArr3);
System.out.println(chArr);
}
}
|
cs |
'아카이브 > 자바의 정석' 카테고리의 다른 글
7장 20200924 (0) | 2020.09.24 |
---|---|
7장 상속 20200921 (0) | 2020.09.21 |
6장 객체지향프로그래밍(2) 20200919 (0) | 2020.09.19 |
6장 객체지향프로그래밍 20200918 (0) | 2020.09.18 |
5장 배열 20200917 (0) | 2020.09.17 |