Со списками легче работать, поскольку они имеют более богатый API и множество реализаций.Таким образом, в результате он становится более гибким и обслуживаемым.
Эффективная Java Джоша Блоха выдвигает на первый план еще одну причину предпочтения списков: «инвариантность».Обобщения проверяются во время компиляции, поэтому типизированные списки на самом деле отлавливают больше ошибок, чем массивы:
// Fails at runtime!
Object[] objectArray = new Long[1];
objectArray[0] = "I don't fit in"; // Throws ArrayStoreException
// Won't compile!
List<Object> ol = new ArrayList<Long>(); // Incompatible types
ol.add("I don't fit in");
Так что в некоторых случаях на самом деле безопаснее использовать списки над массивами.
это чем то, но это становится трудно объяснить.См. Эту ссылку на соответствующий раздел Effective Java, ch 5: http://java.sun.com/docs/books/effective/generics.pdf
HTH