728x90
Array
- 배열의 길이는 고정되어 변경 불가
- 선언할 때 별도의 초기화가 없다면 배열의 크기만큼 기본값이 채워진다
- 물리 주소와 논리 주소가 동일 (index로 해당 원소 접근 가능)
- 연속된 메모리의 공간으로 이루어져 있다
public class Main {
public static void main(String []args) {
int [] arr = new int[5];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;
for(int i=0; i<arr.length; i++) {
System.out.print(arr[i] + " "); // 1 2 3 4 5
}
}
}
ArrayList
- ArrayList는 순서가 있는 엘리먼트의 모임으로 배열과는 다르게 빈 엘리먼트는 절대 허용하지 않는다.
- ArrayList는 배열이 가지고 있는 index라는 장점을 버리고 대신 빈틈없는 데이터의 적재 라는 장점을 취함
- ArrayList에서 index는 몇 번째 순서의 의미를 가진다. (배열-Array에서의 인덱스는 값에 대한 유일무이한 식별자)
- ArrayList는 크기가 가변적이다.
- ArrayList는 빈 공간을 허용하지 않기 때문에 메모리의 낭비가 없다.
- 포인터를 통하여 다음 데이터의 위치를 가르켜고 있어 삽입 삭제의 용이.
public class Main {
public static void main(String []args) {
List <Integer> arrList = new ArrayList<>();
arrList.add(1); //add 데이터 입력
arrList.add(3);
arrList.add(5);
arrList.add(7);
arrList.set(0, 100); //set 데이터 수정
arrList.set(1, 200);
arrList.remove(3); //remove 데이터 삭제
for(int i=0; i<arrList.size(); i++) {
System.out.print(arrList.get(i) + " "); // 100 200 5
}
}
}
728x90
'Java & Spring' 카테고리의 다른 글
[JAVA] equalsIgnoreCase() 대소문자 구분 없이 문자열 비교 (0) | 2022.03.09 |
---|---|
[JAVA] Character.isAlphabetic() 사용법 (0) | 2022.03.08 |
[JAVA] charAt() 사용법 (0) | 2022.03.06 |
[JAVA] 정수의 최대값, 최소값 출력하기 (0) | 2022.03.05 |
[JAVA] .toString() / String.valueOf() 차이점 비교 (0) | 2022.03.04 |