web-dev-qa-db-fra.com

Comment puis-je convertir String [] en ArrayList <String>

Duplicate possible:
Affectation d'un tableau à une ArrayList en Java

J'ai besoin de convertir un String[] en un ArrayList<String> et je ne sais pas comment

File dir = new File(Environment.getExternalStorageDirectory() + "/dir/");
String[] filesOrig = dir.list();

En gros, je voudrais transformer filesOrig en ArrayList.

115
Alexandre Hitchcox

Vous pouvez faire ce qui suit:

String [] strings = new String [] {"1", "2" };
List<String> stringList = new ArrayList<String>(Arrays.asList(strings)); //new ArrayList is only needed if you absolutely need an ArrayList
326
Scott

Comme ça :

String[] words = {"000", "aaa", "bbb", "ccc", "ddd"};
List<String> wordList = new ArrayList<String>(Arrays.asList(words));

ou

List myList = new ArrayList();
String[] words = {"000", "aaa", "bbb", "ccc", "ddd"};
Collections.addAll(myList, words);
30
EricParis16
List<String> list = Arrays.asList(array);

La liste renvoyée sera sauvegardée par le tableau, elle agira comme un pont et sera donc de taille fixe.

16
Jack
List myList = new ArrayList();
Collections.addAll(myList, filesOrig); 
6
sarwar026

Vous pouvez boucler tout le tableau et ajouter dans ArrayList:

ArrayList<String> files = new ArrayList<String>(filesOrig.length);
for(String file: filesOrig) {
    files.add(file);
}

Ou utilisez Arrays.asList(T... a) pour faire comme le commentaire posté.

4
Pau Kiat Wee

Vous pouvez faire quelque chose comme

MyClass [] arr = myList.toArray (new MyClass [myList.size ()]);

2
Carlos Tasada