* 배열 선언 및 생성
int A [] ; //레퍼런스 변수 생성 - 배열이 실제로 생성된 것이 아니라 배열의 주소값이 들어 갈 변수가 만들어 진것,
A = new int [5]; //실제적으로 5개 원소를 갖는배열이 생성됨
int A [] = new int [5];
int[] A = new int [5];
int A [] = {1,2,3,4,5};
- 두 개의 레퍼런스 변수가 같은 배열을 가리킬 수 있음
* 배열의 크기, length 필드
-자바에서 배열은 하나의 객체처럼 다루어 진다.
int size = A.length; //위에 5개짜리로 배열을 생성했으므로 5값이 들어간다.
즉, A라는 레퍼런스 변수가 가리키는 객체의 덩어리 안에 1. 배열 , 2. length라는 필드(C언어로 치면 구조체에서 멤버 변수와 비슷한 개념인 듯)가 있음
*배열과 for-each 문
3개의 예시로 이해를 대신
int [] num = {1,2,3,4,5};
int sum = 0;
for(int k : num) //k값이 차례로 num[0]~num[4]까지 값으로 설정됨
sum += k ;
String names[ ] = {"사과", "배", "바나나"};
for(String s : names)
System.out.print(s+" ") ; // " "는 공백때문에 넣음
enum Weekend {토, 일};
for (Week day: Weekend.values( ))
System.out.print(day+"요일") ;
*다차원 배열
-2차원 배열
예시로 설명하겠다.
int i [ ][ ] = new int [2][5];
int size1= i. length; // 2 //나는 10이 아닐까 생각했었는데 행의 개수를 출력한다고 한다.
int size2= i[0].length; // 5
int size3= i[1].lenght; // 5
*비정방형 배열 //정방형은 직사각형 형태 였음
계단형으로 배열을 만들고 싶다면
int i [][];
i = new int [4][] ;
i[0] = new int [1];
i[1] = new int [2];
i[2] = new int [3];
i[3] = new int [4];
초기화 하면서 비정방형으로 배열을 만들고 싶다면
int i [][] = { {0}. {1,2}, {3,4,5}, {6,7,8,9} };
반복구문을 사용할 때 length를 이용하면 코딩에 용이해짐.
*메소드 배열 리턴 - 레퍼런스가 리턴 됨
int[] makeArray() {
int temp [] = new int [4];
return temp
}
포인트는 리턴타입의 형태가 "변수타입[ ]( ex - int[ ] )" 꼴이라는 것과 return에 "레퍼런스이름(ex- temp)"이 들어가는 것
'자바' 카테고리의 다른 글
4-1. 클래스와 객체_객체 지향 언어의 특성 (0) | 2018.06.04 |
---|---|
3-3. main() 과 예외처리 (0) | 2018.06.03 |
3-1. 반복문 (0) | 2018.06.02 |
2-2. 자바 기본 프로그래밍 (공부메모) (0) | 2018.05.31 |
2-1 자바 기본 프로그래밍 (공부 메모) (0) | 2018.05.28 |