Je dois savoir si je stocke mes données dans une ArrayList et que je dois obtenir la valeur stockée.
Par exemple: si j’ai une liste de tableaux comme celle-ci
ArrayList A = new ArrayList(); A = {"Soad", "mahran"};
et je veux obtenir chaque élément de chaîne, comment puis-je le faire?
J’ai essayé de le faire avec le code suivant:
package arraylist; import java.util.ArrayList; public class Main { public static void main(Ssortingng[] args) { ArrayList S = new ArrayList(); Ssortingng A = "soad "; S.add(A); S.add("A"); Ssortingng F = S.toSsortingng(); System.out.println(F); Ssortingng [] W = F.split(","); for(int i=0 ; i<W.length ; i++) { System.out.println(W[i]); } } }
L’extrait suivant donne un exemple qui montre comment obtenir un élément d’une List
à un index spécifié, et comment utiliser la boucle advanced for-each pour parcourir tous les éléments:
import java.util.*; //... List list = new ArrayList (); list.add("Hello!"); list.add("How are you?"); System.out.println(list.get(0)); // prints "Hello!" for (Ssortingng s : list) { System.out.println(s); } // prints "Hello!", "How are you?"
Notez les points suivants:
List
et ArrayList
génériques sont utilisés à la place du type ArrayList
brut. list
est déclarée en tant que List
, c’est-à-dire le type d’interface au lieu du type d’implémentation ArrayList
. class ArrayList implements List
interface List
E get(int index)
JLS 4.8 Raw Types
L’utilisation de types bruts est autorisée uniquement en tant que concession à la compatibilité du code hérité. L’utilisation de types bruts dans le code écrit après l’introduction de la généricité dans le langage de programmation Java est fortement déconseillée. Il est possible que les futures versions du langage de programmation Java interdisent l’utilisation de types bruts.
Effective Java 2nd Edition: Article 23: Ne pas utiliser les types bruts dans le nouveau code
Si vous utilisez des types bruts, vous perdez tous les avantages de sécurité et d’expression des génériques.
[…] vous devriez privilégier l’utilisation d’interfaces plutôt que de classes pour faire référence à des objects. S’il existe des types d’interface appropriés, les parameters, les valeurs de retour, les variables et les champs doivent tous être déclarés à l’aide des types d’interface .
Variables: À l’exception des variables, toutes les constantes d’instance, de classe et de classe sont mélangées avec une première lettre en minuscule .
Une liste est une collection ordonnée d’éléments. Vous pouvez les append avec la méthode add et les récupérer avec la méthode get (int index). Vous pouvez également parcourir une liste, supprimer des éléments, etc. Voici quelques exemples de base d’utilisation d’une liste:
List names = new ArrayList (3); // 3 because we expect the list // to have 3 ensortinges. If we didn't know how many ensortinges we expected, we // could leave this empty or use a LinkedList instead names.add("Alice"); names.add("Bob"); names.add("Charlie"); System.out.println(names.get(2)); // prints "Charlie" System.out.println(names); // prints the whole list for (Ssortingng name: names) { System.out.println(name); // prints the names in turn. }
Vous pouvez soit récupérer vos chaînes par index ( System.out.println(S.get(0));
) soit les parcourir:
for (Ssortingng s : S) { System.out.println(s); }
Pour d’autres moyens d’itérer une liste (et leurs implications), voir le traditionnel pour loop vs Iterator en Java .
Aditionellement:
ArrayList list = new ArrayList ();
: ArrayList list = new ArrayList ();
Cela devrait faire l’affaire:
Ssortingng elem = (Ssortingng)S.get(0);
Renverra le premier élément du tableau.
Ou
for(int i=0 ; i
Si vous utilisez Java 1.5 ou plus, vous pouvez utiliser:
List S = new ArrayList (); s.add("My text"); for (Ssortingng item : S) { System.out.println(item); }
Vous devriez d’abord lire le tutoriel sur le cadre des collections .
Mais pour répondre à votre question, voici comment procéder:
ArrayList ssortingngs = new ArrayList (); ssortingngs.add("Ssortingng1"); ssortingngs.add("Ssortingng2"); // To access a specific element: System.out.println(ssortingngs.get(1)); // To loop through and print all of the elements: for (Ssortingng element : ssortingngs) { System.out.println(element); }
object get (int index) est utilisé pour renvoyer l’object stocké à l’index spécifié dans la collection appelante.
import java.util.*; class main { public static void main(Ssortingng [] args) { ArrayList arr = new ArrayList (); arr.add("Hello!"); arr.add("Ishe"); arr.add("Watson?"); System.out.printf("%s\n",arr.get(2)); for (Ssortingng s : arr) { System.out.printf("%s\n",s); } } }
Une solution à trois lignes, mais fonctionne plutôt bien:
int[] source_array = {0,1,2,3,4,5,6,7,8,9,10,11}; ArrayList target_list = new ArrayList (); for(int i = 0; i < source_array.length; i++){ target_list.add(random_array[i]); }
Java 8 a introduit l’implémentation par défaut de forEach () dans l’interface Iterable, vous pouvez facilement le faire par une approche déclarative.
List values = Arrays.asList("Yasir","Shabbir","Choudhary"); values.forEach( value -> System.out.println(value));
Voici le code de l’interface Iterable
default void forEach(Consumer super T> action) { Objects.requireNonNull(action); for (T t : this) { action.accept(t); } }
Référence
Tout d’abord, vous devrez définir quel type de données vous devez conserver dans votre liste. Comme vous avez mentionné que les données vont être Ssortingng, la liste doit être de type Ssortingng.
Ensuite, si vous voulez obtenir tous les éléments de la liste, vous devez simplement parcourir la liste en utilisant une simple boucle ou un pour chaque boucle.
List list = new ArrayList<>(); list.add("A"); list.add("B"); for(String s : list){ System.out.println(s); }
De plus, si vous souhaitez utiliser une ArrayList brute au lieu d’une générique, vous devrez réduire la valeur. Lorsque vous utilisez la ArrayList brute, tous les éléments sont stockés sous forme d’object.
List list = new ArrayList(); list.add("A"); list.add("B"); for(Object obj : list){ Ssortingng s = (Ssortingng) obj; //downcasting Object to Ssortingng System.out.println(s); }