Avatar ·

Quando usar LinkedList em vez de ArrayList em Java?

Olá! Comecei a estudar Java e me deparei com o problema de escolher entre LinkedList e ArrayList. Entendo que ambos implementam a interface List, mas não consigo entender em quais situações usar cada um.\n\nEscrevi um teste simples:\n\n```java\nList arrayList = new ArrayList<>();\nList linkedList = new LinkedList<>();\n\n// Adicionando 100000 elementos\nlong start = System.nanoTime();\nfor (int i = 0; i < 100000; i++) {\n arrayList.add("Element " + i);\n}\nlong end = System.nanoTime();\nSystem.out.println("ArrayList add: " + (end - start) + " ns");\n\nstart = System.nanoTime();\nfor (int i = 0; i < 100000; i++) {\n linkedList.add("Element " + i);\n}\nend = System.nanoTime();\nSystem.out.println("LinkedList add: " + (end - start) + " ns");\n```\n\nArrayList mostrou aproximadamente 15-20 ms, e