在 Java 编程中,使用集合时,您可能会遇到两种相似但不同的类型声明:
(1) List<?> myList = new ArrayList<?>(); (2) ArrayList<?> myList = new ArrayList<?>();
两种方法都使用通配符?,首选是将myList声明为List,而不是ArrayList。这是因为列表引用允许更高级别的灵活性和可扩展性。
列表类型的优点:
而 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()); } }
在此示例中,使用列表>允许我们添加和迭代元素,但我们无法访问 ArrayList 特定的方法。为此,我们需要将 list 显式转换为 ArrayList,通常不建议这样做,因为它会引入潜在的转换错误。
以上是Java 中的 List 与 ArrayList:我什么时候应该使用哪个?的详细内容。更多信息请关注PHP中文网其他相关文章!