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.
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);
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.
Vous devriez pouvoir faire quelque chose comme:
ArrayList<String> list = new ArrayList<String>();
for( String s : foo )
{
list.add(s);
}
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
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");
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);
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");
}
}
}