일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Comparable과 Comparable
- 이노베이션캠프
- 자바 언어 기초
- JAVA 기초
- 3장 확인문제
- 이노베이션 캠프
- 객체지향
- 트리 지름 구하기
- ArrayList 개념
- 스프링 입문강의
- dfs
- 챗GPT 명령어 작성팁
- 백준
- Til
- 자바의 정석 6장
- 이것이 자바다 확인문제
- 이것이 자바다
- 이노베이션캠프 동북
- 자료구조
- 채팅GPT
- 자바
- 웹개발 기본지식
- Java
- 조건문과 반복문
- 이것이 자바다 13장
- BFS
- 인프런
- 이것이 자바다 연습문제
- ChatGPT
- 이노캠
- Today
- Total
기록공간
[자료구조] Arrays List의 개념 및 사용 방법 (JAVA) 본문
목차
1. ArrayList 소개
ArrayList는 배열 요소들을 저장하는 구조로, 배열과 유사하지만 동적으로 메모리를 할당할 수 있어 일반 배열 (Array)에 비해 필요에 따라 ArrayList의 크기를 변경할 수 있다는 이점이 있습니다.
장점 :
1. ArrayList는 일반배열에 비해 동적으로 메모리 크기를 늘릴 수 있다는 장점이 있습니다.
2. 또 다른 장점으로는 일반 배열과 달리 인덱스로 요소에 한번에 접근(탐색)할 수 있다는 것입니다.
Java에서 제공하는 ArrayList 클래스에서 제공하는 삽입,삭제 메소드를 사용하면, 배열요소를 쉽게 삽입하거나 삭제할 수 있을 뿐만 아니라 각 인덱스별로 요소를 탐색할 수 있다는 장점이 있습니다.
(시간복잡도 = O(1))
단점 :
1. 목록의 시작 부분에서 요소를 삽입하거나 제거하면 변경 사항을 수용하기 위해 목록의 다른 모든 요소를 이동해야 하므로 속도가 느릴 수 있습니다. 또한 ArrayList는 특히 성능 및 메모리 사용에 영향을 줄 수 있는 대규모 Data set의 경우 상당한 양의 메모리를 사용할 수 있습니다.
2. 메모리 소비: ArrayList는 특히 성능 및 메모리 사용량에 영향을 줄 수 있는 대규모 데이터 세트의 경우 상당한 양의 메모리를 소비할 수 있습니다.
3. 제한된 데이터 유형: ArrayList는 객체만 저장할 수 있습니다. 즉, 기본 데이터 유형은 ArrayList에 저장되기 전에 해당 Wrapper 객체로 변환되어야 합니다.
(Ex : int, double, float, long 같은 유형의 자료형은 primitive type이기 때문에 안됨. Integer, Double등 자료형을 클래스로 감싸주는 것을 사용해야함)
Ex: ArrayList<Integer> intList = new ArrayList<Integer>();
ArrayList<Double> doubleList = new ArrayList<Double>();
ArrayList<String> StringList = new ArrayList<String>();
2. ArrayList 클래스 사용방법
1. ArrayList 객체 생성방법.
ArrayList<객체 자료형> 변수명 = new ArrayList<객체 자료형>();
ArrayList<Integer> intList = new ArrayList<Integer>();
자료형 : Integer
2. 생성후, 데이터 삽입, 삭제 ,값 얻기 등 메소드 사용 방법
intList.add(element) : ArrayList의 끝에 element 값을 추가
intList.add(index, element) : ArrayList의 지정된 index에 Element 삽입intList.
remove(index) : ArrayList에서 지정된 index의 위치의 Element 제거
intList.get(index) : ArrayList에서 index에 저장된 element 반환
intList.set(index,element): 지정된 index에 있는 Element 요소를 대체함.
intList.size() : ArrayList의 element 수를 반환
intList.indexOf(element) : ArrayList에서 Element가 처음으로 나타나는 Index를 반환
intList.clear() : ArrayList에서 모든요소 제거
intList.toArray() : ArrayList의 모든요소를 포함하는 배열을 반환
3. ArrayList 사용예시
import java.util.ArrayList; // ArrayList Class import
public class ArrayListExample {
public static void main(String[] args) {
// Integer Type의 ArrayList 생성
ArrayList<Integer> myList = new ArrayList<Integer>();
// 배열에 값 추가하기
myList.add(10);
myList.add(20);
myList.add(30);
// ArrayList Index에 접근하여, 값 출력하기
System.out.println("Element at index 0: " + myList.get(0));
System.out.println("Element at index 1: " + myList.get(1));
System.out.println("Element at index 2: " + myList.get(2));
}
}
'자료구조' 카테고리의 다른 글
자료구조(Data Structure) 개념 및 종류 (0) | 2023.03.21 |
---|