int[] alist = new int [3];
alist.add("Apple");
alist.add("banana");
alist.add("orange");
Dites que je veux utiliser le deuxième élément de la liste de tableaux. Quel est le codage pour obtenir la sortie suivante?
sortie:
banane
Vous avez ArrayList
tout faux,
add()
dans un tableauFais plutôt ceci:
List<String> alist = new ArrayList<String>();
alist.add("Apple");
alist.add("banana");
alist.add("orange");
String value = alist.get(1); //returns the 2nd item from list, in this case "banana"
L'indexation est comptée de 0
À N-1
Où N
est size()
de la liste.
Utiliser un tableau:
String[] fruits = new String[3]; // make a 3 element array
fruits[0]="Apple";
fruits[1]="banana";
fruits[2]="orange";
System.out.println(fruits[1]); // output the second element
Utiliser une liste
ArrayList<String> fruits = new ArrayList<String>();
fruits.add("Apple");
fruits.add("banana");
fruits.add("orange");
System.out.println(fruits.get(1));
Afin de stocker des chaînes dans un tableau dynamique (add-method), vous ne pouvez pas le définir comme un tableau d'entiers (int [3]). Vous devriez le déclarer comme ceci:
ArrayList<String> alist = new ArrayList<String>();
alist.add("Apple");
alist.add("banana");
alist.add("orange");
System.out.println( alist.get(1) );
Exactement comme des tableaux dans toutes les langues C-like. Les index commencent à 0. Donc, Apple vaut 0, banane vaut 1, orange vaut 2, etc.
Voici comment je l'écrirais.
String[] fruit = "Apple banana orange".split(" ");
System.out.println(fruit[1]);
La grande différence entre les tableaux primitifs et les collections basées sur des objets (par exemple, ArrayList) est que ces derniers peuvent se développer (ou se réduire) de manière dynamique. Les tableaux primitifs ont une taille fixe: une fois que vous les avez créés, leur taille ne change pas (bien que le contenu puisse l'être).