Ответ 1
Вы ищете дженерики Java
List<MyClass> list = new ArrayList<MyClass>();
Здесь учебник http://docs.oracle.com/javase/tutorial/java/generics/index.html
Предполагая, что у меня есть класс с именем Class
,
И я хотел бы создать новый ArrayList, который будет иметь значения типа Class
.
Мой вопрос в том, что: Как это сделать?
Я не могу понять из Java Api.
Я пробовал это:
ArrayList<Class> myArray= new ArrayList ArrayList<Class>;
Вы ищете дженерики Java
List<MyClass> list = new ArrayList<MyClass>();
Здесь учебник http://docs.oracle.com/javase/tutorial/java/generics/index.html
Если вам нужен только список:
ArrayList<Class> myList = new ArrayList<Class>();
Если вам нужен аррайалист определенной длины (в данном случае размер 10):
List<Class> myList = new ArrayList<Class>(10);
Если вы хотите запрограммировать интерфейс (лучше для абстракций):
List<Class> myList = new ArrayList<Class>();
Программирование на интерфейсах считается лучше, потому что оно более абстрактно. Вы можете изменить свой Arraylist с другой реализацией списка (например LinkedList), а остальная часть вашего приложения не нуждается в каких-либо изменениях.
Ты очень близко. Используйте тот же тип с обеих сторон и включите ()
.
ArrayList<Class> myArray = new ArrayList<Class>();
Сделайте это: List<Class> myArray= new ArrayList<Class>();
Исправлен код для вас:
ArrayList<Class> myArray= new ArrayList<Class>();
Вы можете использовать в Java 8
List<Class> myArray= new ArrayList<>();
ArrayList<Class> myArray = new ArrayList<Class>();
Здесь будет создан ArrayList конкретного класса. В общем случае может быть любой тип данных, такой как int, char, строка или даже массив вместо класса.
Они добавляются в список массивов с помощью
myArray.add();
И значения извлекаются с помощью
myArray.get();
Материал, пожалуйста, просмотрите эту ссылку И попробуйте это
ArrayList<Class> myArray= new ArrayList<Class>();
Чтобы создать непустой список фиксированного размера, в котором не поддерживаются различные операции, такие как добавление, удаление и т. Д.:
List<Integer> fixesSizeList= Arrays.asList(1, 2);
Непустой изменяемый список:
List<Integer> mutableList = new ArrayList<>(Arrays.asList(3, 4));
В Java 9 вы можете использовать статический фабричный метод List.of(...)
:
List<Integer> immutableList = List.of(1, 2);
List<Integer> mutableList = new ArrayList<>(List.of(3, 4));
В Java 10 вы можете использовать вывод типа локальной переменной:
var list1 = List.of(1, 2);
var list2 = new ArrayList<>(List.of(3, 4));
var list3 = new ArrayList<String>();
Проверьте больше примеров ArrayList здесь.