Java 프로그래밍에서 컬렉션으로 작업할 때 두 가지 유사하지만 서로 다른 유형 선언을 접할 수 있습니다.
(1) List<?> myList = new ArrayList<?>(); (2) ArrayList<?> myList = new ArrayList<?>();
두 접근 방식 모두 와일드카드 문자를 사용하지만 ?, 선호되는 선택은 myList를 ArrayList가 아닌 List로 선언하는 것입니다. 이는 목록 참조가 더 높은 수준의 유연성과 확장성을 허용하기 때문입니다.
목록 유형의 장점:
While List> 일반적으로 선호되지만 ArrayList> 사용을 고려할 수 있는 특정 시나리오가 있습니다. 대신:
다음 예를 고려하세요.
public class Example { public static void main(String[] args) { // Initialize using type List List<?> list = new ArrayList<>(); // Add elements to the list list.add("One"); list.add("Two"); // Iterate over the list (can only access elements using Object type) for (Object element : list) { System.out.println(element); } // Downcast to ArrayList (not recommended) ArrayList<?> arrayList = (ArrayList<?>) list; // Access ArrayList-specific methods System.out.println("ArrayList size: " + arrayList.size()); } }
이 예에서는 List>를 사용하여 요소를 추가하고 반복할 수 있지만 ArrayList 관련 메서드에 액세스할 수는 없습니다. 이렇게 하려면 목록을 ArrayList로 명시적으로 캐스팅해야 합니다. 이는 캐스팅 오류가 발생할 수 있으므로 일반적으로 권장되지 않습니다.
위 내용은 Java의 목록과 ArrayList: 언제 어느 것을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!