создание массива без объявления размера-java
я копался вокруг той же проблемы, но я не мог найти то же самое, что у меня было
Я хочу создать массив без указания размера, потому что я не знаю, как это будет !
чтобы устранить проблему, я хотел бы дать вам код, который я ищу
public class t
{
private int x[];
private int counter=0;
public void add(int num)
{
this.x[this.counter] = num;
this.counter++;
}
}
Как видите, пользователь может использовать add
функция для добавления элемента в массив 10000 раз или только один раз, так что это неизвестный размер
6 ответов
Использование Java.утиль.ArrayList или LinkedList-это обычный способ сделать это. С массивами это невозможно, как я знаю.
пример:
List<Float> unindexedVectors = new ArrayList<Float>();
unindexedVectors.add(2.22f);
unindexedVectors.get(2);
возможно, вы ищете List
? Либо LinkedList
или ArrayList
хорошие классы, чтобы взглянуть на. Затем вы можете позвонить toArray()
чтобы получить список в виде массива.
как говорили другие, используйте ArrayList
. Вот как:
public class t
{
private List<Integer> x = new ArrayList<Integer>();
public void add(int num)
{
this.x.add(num);
}
}
как вы можете видеть, ваш add
метод просто называет ArrayList
' s добавить метод. Это полезно, только если ваша переменная является частной (что и есть).
Как только размер массива фиксируется при запуске программы ,его размер не может быть изменен дальше. Поэтому лучше пойти на ArrayList, имея дело с динамическими массивами.