Comment utiliser une liste de tableaux en Java?

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:

  • Les types List et ArrayList génériques sont utilisés à la place du type ArrayList brut.
  • Les noms de variables commencent par des minuscules
  • list est déclarée en tant que List , c’est-à-dire le type d’interface au lieu du type d’implémentation ArrayList .

Les références

API:

  • Tutoriel Java Collections Framework
  • class ArrayList implements List
  • interface List
    • E get(int index)
      • Renvoie l’élément à la position spécifiée dans cette liste.

Ne pas utiliser de types bruts

  • 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.

Préférer les interfaces aux classes d’implémentation dans les déclarations de type

  • Effective Java 2nd Edition: Article 52: Référence aux objects par leurs interfaces

    […] 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 .

Conventions de nommage

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:

  • vous ne devez pas utiliser de noms de variables commençant par des majuscules
  • vous devez paramétrer votre liste de ArrayList list = new ArrayList(); : ArrayList list = new ArrayList();
  • vous devez vous familiariser avec la documentation API complète de Java (aka Javadoc ), par exemple Java 5 , Java 6

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.

Extrait de code :

 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 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); }