Java에서 목록과 배열 목록의 차이점
ArrayList
및 List
는 Java의 Collection 프레임워크의 구성원이며 여기서 ArrayList
는 클래스이고 List
는 인터페이스입니다. Collection 프레임워크의 도움으로 개체 그룹에서 삭제, 삽입, 정렬, 조작 및 검색과 같은 다양한 작업을 수행할 수 있습니다.
수집 프레임워크
Java의 Collection 프레임워크에는 다음과 같은 인터페이스 및 클래스 세트가 있습니다.
상호 작용:
1 세트
2. 대기열
3. 목록
4. 데크
클래스:
- 어레이리스트
- 벡터
- 링크드리스트
- 해시셋
- 트리셋
- LinkedHashSet
- 우선순위 대기열
Collection 프레임워크에는 다양한 클래스와 인터페이스가 있지만 이 기사에서는 List
및 ArrayList
에만 초점을 맞추므로 예를 들어 각각에 대해 설명하겠습니다.
자바로 나열
Java에서 List
는 Collection 프레임워크에 속합니다. 단일 단위로 표시되는 정렬된 개체 그룹입니다.
이기종 유형의 데이터를 목록에 저장하고 목록 요소의 인덱스를 기반으로 데이터에 액세스할 수 있습니다. Java의 목록에서 삭제, 삽입, 업데이트 및 검색과 같은 다양한 작업을 수행할 수 있습니다.
List
인터페이스는 java.util
패키지에서 찾을 수 있습니다. Collection 인터페이스를 상속합니다.
LinkedList
, Stack
, ArrayList
및 Vector
클래스를 구현합니다. 목록을 앞뒤 방향으로 반복할 수 있습니다.
package articlecodesinjava;
import java.util.ArrayList;
import java.util.List;
class TestingList {
public static void main(String[] args) {
List<String> list = new ArrayList<>(); // List object
list.add("Successfully created a list in Java"); // adding a string to the List
System.out.println(list);
}
}
출력:
[Successfully created a list in Java] //The output is in List form
Java의 내장 목록 메서드
Java에서 목록에는 특정 방법이 여러 개 있습니다. 이들은 다른 목적으로 사용됩니다. 가장 인기 있고 빈번한 것은 다음과 같습니다.
package articlecodesinjava;
import java.util.*;
class TestingList {
public static void main(String[] args) {
List<Object> list = new ArrayList<>();
list.add(1); // Adding values in list
list.add(2);
System.out.println("List after adding values " + list);
list.removeAll(list); // return and empty list, all values are erased
System.out.println("List after the removeAll method " + list);
list.add("3"); // Adding values in list
list.add("4");
System.out.println("New list " + list);
System.out.println("The size of the List " + list.size());
System.out.println("Return a value from the list a 1 position " + list.get(1));
System.out.println("Removing value at position 1 = " + list.remove(1));
System.out.println("Final list" + list);
}
}
출력:
List after adding values [1, 2]
List after the removeAll method []
New list [3, 4]
The size of the List 2
Return a value from the list a 1 position 4
Removing value at position 1 = 4
Final list[3]
먼저 위 프로그램에서 List
및 ArrayList
에 액세스하기 위해 java.util.*
패키지를 가져왔습니다. 그런 다음 목록을 만들고 목록의 객체로 먼저 add()
로 일부 값을 채운 다음 removeAll()
로 목록에서 모든 데이터를 제거하여 빈 목록을 반환했습니다.
또한 목록에서 일부 다른 작업을 수행하기 위해 목록에 일부 값을 다시 추가했습니다. size()
로 목록의 크기를 찾았고 get(1)
으로 위치/인덱스 1번 값을 표시했으며 마지막에 remove(1)
.
이 목록에는 수많은 내장 방법이 있습니다. 자세한 내용은 Java 공식 사이트에서 확인할 수 있습니다.
Java의 ArrayList
Java에서 ArrayList
는 기존 배열의 고급 버전입니다. 전통적인 어레이는 크기가 고정되어 있어 어레이의 크기를 늘리거나 줄일 수 없었습니다.
따라서 Collection 프레임워크는 ArrayList
라는 동적 배열을 제공합니다. ArrayList
클래스는 목록에서 요소를 추가 및 제거할 때 크기를 확장 및 축소할 수 있는 동적 배열입니다.
AbstractList
클래스를 상속하고 List
인터페이스를 구현하여 모든 List
인터페이스 메서드를 사용합니다. 목록 요소의 인덱스를 통해 요소에 액세스할 수 있습니다.
ArrayList
는 char, int, float 등과 같은 기본 데이터 유형을 지원하지 않습니다. 그러나 이러한 경우에는 래퍼 클래스를 사용합니다.
package articlecodesinjava;
import java.util.ArrayList;
class TestingArrayList {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>(); // ArrayList object
arrayList.add("Successfully created an arrayList in Java"); // adding a string to the ArrayList
System.out.println(arrayList);
}
}
출력:
[Successfully created an arrayList in Java]
Java의 내장 ArrayList 메서드
ArrayList
는 List
를 구현한 AbstractList
를 확장하므로 ArrayList
에서 List
의 모든 메서드를 사용할 수 있습니다.
아래 예를 참조하십시오. ArrayList
에서 동일한 방법으로 위의 모든 프로그램을 사용합니다.
코드 예:
package articlecodesinjava;
import java.util.*;
class TestingArrayList {
public static void main(String[] args) {
ArrayList arrayList = new ArrayList<>();
arrayList.add(1); // Adding values in ArrayList
arrayList.add(2);
System.out.println("ArrayList after adding values " + arrayList);
arrayList.removeAll(arrayList); // return and empty ArrayList, all values are erased
System.out.println("ArrayList after the removeAll method " + arrayList);
arrayList.add("3"); // Adding values in ArrayList
arrayList.add("4");
arrayList.add(0, 5);
System.out.println("New ArrayList " + arrayList);
System.out.println("The size of the ArrayList " + arrayList.size());
System.out.println("Return a value from the ArrayList at 1 position " + arrayList.get(1));
System.out.println("Removing value at position 1 = " + arrayList.remove(1));
System.out.println("Final ArrayList" + arrayList);
}
}
출력:
ArrayList after adding values [1, 2]
ArrayList after the removeAll method []
New ArrayList [5, 3, 4]
The size of the ArrayList 3
Return a value from the ArrayList at 1 position 3
Removing value at position 1 = 3
Final ArrayList[5, 4]
Java에서 List와 ArrayList의 차이점
다음은 Java에서 List
와 ArrayList
의 주요 차이점입니다.
목록
목록
은 인터페이스입니다.List
인터페이스는 컬렉션 프레임워크를 확장합니다.- 인스턴스화할 수 없습니다.
- 개체 목록을 만듭니다.
목록
은 객체 조작이 더 빠릅니다.
배열목록
ArrayList
는 표준 컬렉션 클래스입니다.ArrayList
는List
인터페이스를 구현하는AbstractList
를 확장합니다.- 인스턴스화할 수 있습니다.
- 개체 배열을 만듭니다.
ArrayLists
는 List에 비해 개체 조작이 빠르지 않습니다.
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn관련 문장 - Java List
- Java를 사용하여 목록에서 요소의 인덱스 찾기
- Java에서 목록을 청크로 분할
- Java의 목록에서 첫 번째 요소 가져오기
- Java의 필터 목록
- Java에서 맵 값을 목록으로 변환