Je veux remplir une ArrayList
avec ces caractères +, -, *, etc. Comment puis-je faire cela sans avoir à append tous les caractères avec arrayList.add()
?
Collections.addAll est ce que vous voulez.
Collections.addAll(myArrayList, '+', '-', '*', '^');
Une autre option consiste à transmettre la liste au constructeur en utilisant Arrays.asList comme ceci:
List myArrayList = new ArrayList (Arrays.asList('+', '-', '*', '^'));
Si, toutefois, vous avez raison avec le arrayList de longueur fixe, vous pouvez aller avec la création aussi simple que list = Arrays.asList(...)
. La spécification Arrays.asList indique qu’elle renvoie une liste de longueur fixe qui fait office de passerelle vers le tableau transmis, ce qui pourrait ne pas être ce dont vous avez besoin.
En supposant que vous ayez une ArrayList
contenant des caractères, vous pouvez faire ceci:
List list = new ArrayList (); list.addAll(Arrays.asList('+', '-', '*', '^'));
Vous pouvez utiliser Google guava en tant que tel:
ImmutableList dirs = ImmutableList.of('+', '-', '*', '^');
Vous pouvez utiliser la méthode asList
avec varargs pour le faire en une seule ligne:
java.util.Arrays.asList('+', '-', '*', '^');
Si la liste n’a pas besoin d’être modifiée, cela serait déjà suffisant. Sinon, vous pouvez le transmettre au constructeur ArrayList pour créer une liste modifiable:
new ArrayList(Arrays.asList('+', '-', '*', '^'));
Peut-être cela aide
List l = Arrays.asList("+","-");
Utilisez la classe Arrays
en Java qui vous renverra une ArrayList
:
final List characters = Arrays.asList("+","-");
Vous aurez besoin d’un peu plus de travail si vous avez besoin d’une List
.