배열
배열은 같은 타입의 변수가 여러 개 필요할 때 사용하는 자료구조이다.
배열은 두 가지 선언 방식이 있다.
첫번째로, 배열을 먼저 선언한 후 배열의 각 요소마다 초기화를 해주는 방식이다.
//배열 선언 이후 초기화
//자료형[] 배열이름 = new 자료형[배열 크기];
String[] arr = new String[5]; // (선언)
arr[0] = "reset"; // (초기화)
두번째로, 배열의 선언과 동시에 초기화를 해주는 방식이다.
//배열 선언과 동시에 초기화
String[] arr2 = {"r", "e", "s", "e", "t"};
배열 메서드
○ length()
배열의 길이 정보를 얻을 수 있는 메소드이다.
int len = arr.length;
○ Arrays
Arrays 클래스의 메소드를 사용하고자 한다면 다음과 같이 패키지를 불러와야 한다.
import java.util.Arrays;
○ Arrays.toString()
배열의 내용을 println을 이용해 한 번에 출력하려고 하면 주소값이 출력된다.(char형 제외)
이는 java에서 사용하는 배열이 값을 가지고 있는 것이 아니라 해당 값이 저장된 주소를 참조하는 것이기 때문이다.
배열의 값 중 char형, 즉 문자열은 한 번에 출력이 가능하기 때문에 사용자는 배열의 값을 문자열로 만들어 출력하는 과정을 가지게 되는데, 이때 사용되는 메서드가 Arrays.toString()이다.
System.out.println(Arrays.toString(arr));
위처럼 먼저 배열을 문자열로 치환해준다음 이 값을 출력한다.
○ Arrays.sort()
배열을 오름차순으로 정렬하는 메서드이다.
다만 정렬 후 배열을 반환하지는 않는다.
Arrays.sort(arr); // arr 배열에 오름차순으로 정렬한 배열을 저장
System.out.println(Arrays.toString(arr)); // 정렬된 배열을 원하는 방식대로 따로 사용
Arrays.sort(arr, 0, 5); // 배열의 일부분만 정렬하는 것도 가능하다. 요소 0~4까지 정렬
○ Arrays.equals()
두 배열이 완전히 같은지 한 번에 비교할 수 있는 메소드이다.
boolean eq = Arrays.equals(arr1, arr2);
2차원 배열
2차원 배열은 1차원 배열의 배열과 같다.
한 개의 1차원 배열이 존재할때, 이를 또다시 자신의 하나의 요소로 삼는 것이 2차원 배열이다.
2차원 배열은 다음과 같이 선언할 수 있다.
자료형[][] 배열이름 = new 자료형[배열크기][배열크기];
int[][] arr = new int[3][5];
arr[0][0] = 1;
arr[0][1] = 2;
...
arr[2][4] = 12;
배열의 갯수와 길이를 정하는 방식을 정변 배열이라고 한다.
반면 배열의 갯수는 정하나 각 배열의 길이는 유동적으로 할당할 수 있도록 한 것이 가변 배열이다.
int[][] arr2 = new int[3][];
arr2[0] = new int[3];
arr2[1] = new int[2];
arr2[2] = new int[5];
'Java > Base' 카테고리의 다른 글
[JAVA] 리스트 (0) | 2023.09.07 |
---|---|
[JAVA] 키보드 입력 (0) | 2023.09.06 |
[JAVA] 생성자 (0) | 2023.08.17 |
[JAVA] getter(), setter() (0) | 2023.08.08 |
[JAVA] 다형성 - 메소드 오버라이딩(Method Overridng) (0) | 2023.08.08 |