Я знаю, что это немного устарело, но я собираюсь ответить на это в любом случае для будущих представлений.
Если вам действительно нужна структура ArrayList<String>[]
, вы можете просто создать класс, расширяющий ArrayList, и сделатьмассив этого класса:
public class StringArrayList extends ArrayList<String>{}
А в вашей реализации:
ArrayList<String> name[] = new StringArrayList[9];
Вот пример:
package testspace.arrays;
import java.util.List;
public class TestStringArray {
public static void main(String[] args) {
List<String>[] arr = new StringArrayList[10];
for(int i = 0; i < arr.length; i++){
// CANNOT use generic 'new ArrayList<String>()'
arr[i] = new StringArrayList();
for(int j = 0; j < arr.length; j++){
arr[i].add("list item #(" + j + "|" + i + ")");
}
}
StringBuilder sb = new StringBuilder();
for(final List<String> list : arr){
for(final String str : list){
sb.append(str + " ");
}
sb.append("\n");
}
System.out.println(sb.toString());
}
}
ПРИМЕЧАНИЕ Вы получите ошибку времени выполнения, если будете использовать вместо этого: arr[i] = new ArrayList<String>()