럿고의 개발 노트
[프로그래머스] 자바 입문 > Part4. 배열 본문
[프로그래머스] 자바 입문
Part4. 배열
1. 배열만들기
1차원 배열
배열은 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료 구조.
같은 데이터 타입을 가진 여러개의 변수가 필요할때 사용
선언방법
데이터타입[] 배열명 = new 데이터타입[배열길이]; // 선언 데이터타입[] 배열명 = { 데이터값 }; // 선언 및 초기화
public class ArrayExam {
public static void main(String[] args) {
int[] array1 = new int[100]; // 타입[] 배열명 = new(객체생성) 타입[길이]
array1[0] = 50; // 값 넣는 법, index는 0번부터 시작
array1[10] = 100;
int[] array2 = new int[] {1, 2, 3, 4}; // 처음부터 값을 넣는 방법
int[] array3 = {1, 2, 3, 4}; // 위의 코드를 이렇게 줄일수도 있음
System.out.println(array3[3]); // 배열의 값을 출력
int value = array3[0]; // 배열의 있는 값을 변수에 넣기
System.out.println(value); // 변수 출력
}
}
2. 배열 사용하기
for문을 이용해서 배열 사용
배열에 접근할때 인덱스를 통해 접근(인덱스는 0부터 시작)
배열의 길이를 알아내는 방법
배열을 참조하는 레퍼런스 배열(배열명).length
public class ArrayWithFor {
public static void main(String[] args) {
int[] iarray = new int[100]; // int값 100개를 담을 수 있는 iarray 생성
iarray[0] = 1; // 인덱스 0에 1이라는 값 넣기
iarray[1] = 2; // 인덱스 1에 2이라는 값 넣기
System.out.println(iarray.length); // 배열 길이 확인
// 1 ~ 100까지 값을 넣을려고 할때 반복문 사용
for (int i = 0; i < iarray.length; i++) { // 배열명.length은 배열의 길이를 알 수 있음
iarray[i] = i + 1; // 1 ~ 100까지 값 넣기
}
// 배열의 모든 값을 더하는 방법
int sum = 0; // 결과값(모든 값을 더한 값)
// 변수의 스코프 : 기본적으로 괄호 안에서만 사용할수 있음.
for (int i = 0; i < iarray.length; i++) {
sum += iarray[i];
}
}
}
3. 2차원 배열
2차원 배열
- 2차원 배열이란 배열의 배열
public class ArrayExam2 {
public static void main(String[] args) {
int[][] array4 = new int[3][4]; // 2차원배열 생성
//0 [0,1,2,3]
//1 [0,1,2,3]
//2 [0,1,2,3]
//array4[0] = 10; // 2차원배열에서는 이렇게 값을 넣어서는 안된다. 참조변수이기때문에,
// 참조변수는 값을 저장할수 없다
array4[0][1] = 10; // 2차원배열 값 넣기
int[][] array5 = new int[3][]; // 2차원배열은 길이가 다른 배열을 생성할수 있음
// 0
// 1
// 2
// array5[0][0] = 10; // 오류발생, 0번지를 가르키는 배열이 없어서 오류
array5[0] = new int[1]; // 참조변수 안에 배열을 넣어줘야, 그 참조변수 배열에 값을 넣을수 있음
int[][] array6 = {{1,}, {1,2}, {1,2,3}}; // 선언과 초기화 동시에 가능
System.out.println(array6[0][0]); // 2차원 배열 출력
System.out.println(array6[2][2]); // 2차원 배열 출력
}
}
4. for each
for each
JDK5부터 추가된 구문
자료구조의 값들을 하나씩 빼낼때 사용
public class ForEachExam {
public static void main(String[] args) {
int[] iarr = {10, 20, 30, 40, 50}; // 1차원배열 선언 및 초기화
for(int i = 0; i < iarr.length; i++) { // for문으로 배열값을 출력하기
System.out.println(iarr[i]);
}
for (int i : iarr) { // foreach문(타입 값을 받아줄 변수명 : 출력하고 싶은 자료 구조)
System.out.println(i);
}
}
}
※ 출처
'Java Note > [프로그래머스] 자바 입문(동영상 강의)' 카테고리의 다른 글
[프로그래머스] 자바 입문 > Part7. 상속 (0) | 2020.01.27 |
---|---|
[프로그래머스] 자바 입문 > Part5. 클래스와 객체 (0) | 2020.01.23 |
[프로그래머스] 자바 입문 > Part3. 제어문 (0) | 2019.12.20 |
[프로그래머스] 자바 입문 > Part2. 변수와 계산 (0) | 2019.12.20 |
[프로그래머스] 자바 입문 > Part1. 자바 시작하기 (0) | 2019.12.19 |
Comments