Я хочу задать вопрос о Java. У меня есть пользовательский класс объекта, ученик, у которого есть 2 члена данных, имя и идентификатор. И в другом классе я должен объявить этот объект [] (например, student stu[?];
). Тем не менее, я не знаю размер массива объектов. Можно ли объявить массив объектов, но не знать размер? Спасибо.Как объявить массив динамических объектов в Java?
ответ
User ArrayList
вместо этого. Он будет автоматически расширяться при добавлении новых элементов. Позже вы можете преобразовать его в массив, если вам нужно.
В качестве другого варианта (не уверен, что именно вы хотите), вы можете объявить поле Object[]
и не инициализировать его немедленно.
Как вы, наверное, уже выяснили, регулярные массивы в Java имеют фиксированный размер (размер массива не может быть изменен), поэтому для динамического добавления элементов в массив вам нужен массив с изменяемым размером. В Java изменяемые размеры массивов реализуются как класс ArrayList (java.util.ArrayList
). Простой пример его использования:
import java.util.ArrayList;
// Adds a student to the student array list.
ArrayList<Student> students = new ArrayList<Student>();
students.add(new Student());
The <Student>
скобки (функция под названием дженерики в Java) не являются обязательными; однако вы должны их использовать. В основном они ограничивают тип объекта, который можно сохранить в списке массивов, поэтому вы не можете хранить объекты String в массиве, полном объектов Integer.
Массивы на Java не неизменный. Вы можете легко выполнить 'myArray [2] = 13', тем самым изменив массив. Возможно, вы имели в виду, что их размер не может быть изменен? –
Да, это то, что я имел в виду, спасибо за это. Я объясню это в своем ответе. – agentbanks217
Вы можете объявить как: Student stu[]=null;
, и создать его с фиксированным размером: stu[]=new Student[10]
, пока вы не сможете узнать размер. Если вам нужно использовать массив.
Невозможно, мы должны указать размер массива при объявлении массива объектов;
один способ объявить массив объектов
student st[]; st=new student[]3;
второго путь
student st[]=new student[5];
в обеих случаях не любые объекты, которые создаются выделяются только пространство для массива.
st=new student[1];
это создаст новый объект;
Если студент - это класс, вы должны назвать Студента капиталом S. –
- 1. JSON как массив динамических объектов
- 2. Как объявить массив объектов C#
- 3. Динамический массив динамических объектов
- 4. Java массив массив объектов
- 5. Как объявить массив объектов в аннотации?
- 6. Как объявить массив в java
- 7. Как объявить массив объектов в F #?
- 8. Как объявить массив объектов в C#
- 9. Объявить массив объектов, содержащих объекты
- 10. как объявить массив ObservableArrayList Java
- 11. Java массив объектов
- 12. Как вы объявляете массив объектов в Java?
- 13. Скопировать указатель объекта в массив динамических объектов
- 14. Как объявить массив типов классов в Java
- 15. как объявить длинный длинный массив в Java?
- 16. Как объявить массив unsigned char в java?
- 17. Как объявить статический массив строк в Java?
- 18. Как объявить динамический массив String в Java
- 19. Как объявить массив imageIcon?
- 20. объявить динамический массив, основанный на динамических переменных в JQuery
- 21. объявить массив с использованием динамических переменных в JavaScript
- 22. Как объявить массив в javafx
- 23. Массив объектов в Java
- 24. Powershell - Объявить пустой массив объектов размером
- 25. В Process.js, как объявить тип объекта и массив объектов?
- 26. Как объявить массив пользовательских объектов класса в Swift
- 27. Как объявить массив объектов разных типов в TypeScript?
- 28. Как объявить записываемый массив константных объектов в C#?
- 29. Как правильно объявить массив пользовательских объектов в Swift?
- 30. Как массивы динамических объектов различаются в C++ и Java?
-1: Нет примера кода. Я предпочитаю этот ответ, потому что они приложили все усилия и фактически дали достаточно информации, что дальнейший поиск не требовался после прочтения их ответа: http://stackoverflow.com/a/3887507/901641 – ArtOfWarfare