web-dev-qa-db-fra.com

Ajout à une ArrayList Java

Je suis un débutant en Java et j'ai besoin d'aide.

J'essaie de convertir un type de données abstraites Foo, qui est une liste associée, en un tableau des chaînes B. Comment faire pour parcourir la liste et ajouter chaque chaîne au tableau.

J'y réfléchis peut-être, mais je suis perdu maintenant.

Merci pour l'aide à l'avance. 

30
Brian

Instancier une nouvelle liste de tableaux:

List<String> myList = new ArrayList<String>();

Parcourez votre structure de données (avec une boucle for, par exemple, plus de détails sur votre code pourraient aider.) Et pour chaque élément (yourElement):

myList.add(yourElement);
39
pcalcao

Si vous avez une liste de chaînes appelée 'foo', vous pouvez facilement l'ajouter (l'ajouter) à une autre liste ArrayList, 'list', en utilisant la méthode suivante:

ArrayList<String> list = new ArrayList<String>();
list.addAll(foo);

de cette façon, vous n'avez même pas besoin de faire une boucle.

11
Mohammad Najar

Vous devriez pouvoir faire quelque chose comme:

ArrayList<String> list = new ArrayList<String>();
for( String s : foo )
{
    list.add(s);
}
4
Terhands

Eh bien, vous devez parcourir votre type abstrait Foo et cela dépend des méthodes disponibles sur cet objet. Vous n'avez pas à parcourir ArrayList car cet objet croît automatiquement en Java. (Ne le confondez pas avec un tableau dans d'autres langages de programmation)

Lectures recommandées . Listes dans le tutoriel Java

1
madth3

Si vous utilisez Java 9, il existe un moyen simple de réduire le nombre de lignes sans avoir à initialiser la méthode add.

List<String> list = List.of("first", "second", "third");
0
Rahul Raj

La liste de tableaux peut être implémentée avec le code suivant: 

Arraylist<String> list = new ArrayList<String>();
list.add(value1);
list.add(value2);
list.add(value3);
list.add(value4);
0
Aravind A

merci pour l'aide, j'ai résolu mon problème :) Voici le code si quelqu'un d'autre en a besoin: D

import Java.util.*;

public class HelloWorld {


public static void main(String[] Args) {

Map<Integer,List<Integer>> map = new HashMap<Integer,List<Integer>>();
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(9);
list.add(11);
map.put(1,list);        

    int First = list.get(1);
    int Second = list.get(2);

    if (First < Second) {

        System.out.println("One or more of your items have been restocked. The current stock is: " + First);

        Random rn = new Random();
int answer = rn.nextInt(99) + 1;

System.out.println("You are buying " + answer + " New stock");

First = First + answer;
list.set(1, First);
System.out.println("There are now " + First + " in stock");
}     
}  
}
0
Adam200214