Подтвердить что ты не робот

Как использовать ArrayList.addAll()?

Я хочу заполнить ArrayList этими символами +, -, *, ^ и т.д. Как я могу это сделать без добавления каждого символа с помощью arrayList.add()?

4b9b3361

Ответ 1

Collections.addAll - это то, что вы хотите.

Collections.addAll(myArrayList, '+', '-', '*', '^');

Другой вариант - передать список в конструктор с помощью Arrays.asList следующим образом:

List<Character> myArrayList = new ArrayList<Character>(Arrays.asList('+', '-', '*', '^'));

Если, однако, вы хорошо разбираетесь в том, что массивList имеет фиксированную длину, вы можете пойти с созданием так же просто, как list = Arrays.asList(...). Спецификация Arrays.asList утверждает, что он возвращает список фиксированной длины, который действует как мост к переданному массиву, что может быть не тем, что вы необходимо.

Ответ 2

Предполагая, что у вас есть ArrayList, который содержит символы, вы можете сделать это:

List<Character> list = new ArrayList<Character>();
list.addAll(Arrays.asList('+', '-', '*', '^'));

Ответ 3

Вы можете использовать Google guava как таковой:

ImmutableList<char> dirs = ImmutableList.of('+', '-', '*', '^');

Ответ 4

Вы можете использовать метод asList с varargs, чтобы сделать это в одной строке:

java.util.Arrays.asList('+', '-', '*', '^');

Если список не нуждается в дальнейшем изменении, этого уже будет достаточно. В противном случае вы можете передать его конструктору ArrayList для создания изменяемого списка:

new ArrayList(Arrays.asList('+', '-', '*', '^'));

Ответ 5

Может быть, это помогает

List<String> l = Arrays.asList("+","-");

Ответ 6

Используйте класс Arrays в Java, который вернет вам ArrayList:

final List<String> characters = Arrays.asList("+","-");

Вам понадобится немного больше работы, если вам нужен List<Character>.