Java Array
Array est l'une des structures de données importantes pour chaque langage d'édition. Bien sûr, différents langages ont une implémentation et un traitement différents des tableaux.
Les tableaux fournis dans le langage Java sont utilisés pour stocker des éléments de taille fixe du même type.
Vous pouvez déclarer une variable tableau, telle que nombres[100] au lieu de déclarer directement 100 variables indépendantes numéro0, numéro1, ...., numéro99.
Ce tutoriel vous présentera la déclaration, la création et l'initialisation des tableaux Java, et vous donnera le code correspondant.
Déclarer des variables de tableau
Tout d'abord, vous devez déclarer une variable de tableau avant de pouvoir utiliser le tableau dans votre programme. Voici la syntaxe pour déclarer les variables de tableau :
dataType[] arrayRefVar; // 首选的方法 或 dataType arrayRefVar[]; // 效果相同,但不是首选方法
Remarque : Il est recommandé d'utiliser le style de déclaration de dataType[] arrayRefVar pour déclarer les variables de tableau. Le style dataType arrayRefVar[] provient du langage C/C et est adopté en Java pour permettre au programme C/C de comprendre rapidement le langage Java.
Exemples
Voici des exemples de code de ces deux syntaxes :
double[] myList; // 首选的方法 或 double myList[]; // 效果相同,但不是首选方法
Création de tableaux
Le langage Java utilise l'opérateur new pour créer des tableaux . La syntaxe est la suivante :
arrayRefVar = new dataType[arraySize];
L'instruction de syntaxe ci-dessus fait deux choses :
1 Créez un tableau en utilisant dataType[arraySize].
2. Attribuez la référence du tableau nouvellement créé à la variable arrayRefVar.
La déclaration des variables du tableau et la création d'un tableau peuvent être complétées en une seule instruction, comme indiqué ci-dessous :
dataType[] arrayRefVar = new dataType[arraySize];
De plus, vous pouvez également créer un tableau de la manière suivante .
dataType[] arrayRefVar = {value0, value1, ..., valuek};
Les éléments d'un tableau sont accessibles par index. L'indexation du tableau commence à 0, donc les valeurs d'index vont de 0 à arrayRefVar.length-1.
Exemple
L'instruction suivante déclare d'abord une variable de tableau maListe, puis crée un tableau contenant 10 éléments de type double et attribue sa référence à la variable maListe.
double[] myList = new double[10];
L'image ci-dessous représente le tableau myList. Ici, il y a 10 éléments doubles dans le tableau myList et leurs indices vont de 0 à 9.
Traitement des tableaux
Le type d'élément du tableau et la taille du tableau sont déterminés, donc lors du traitement des éléments du tableau, nous utilisons généralement une boucle de base ou pour chaque cycle.
Exemple
Cet exemple montre complètement comment créer, initialiser et manipuler des tableaux :
public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // 打印所有数组元素 for (int i = 0; i < myList.length; i++) { System.out.println(myList[i] + " "); } // 计算所有元素的总和 double total = 0; for (int i = 0; i < myList.length; i++) { total += myList[i]; } System.out.println("Total is " + total); // 查找最大元素 double max = myList[0]; for (int i = 1; i < myList.length; i++) { if (myList[i] > max) max = myList[i]; } System.out.println("Max is " + max); } }
L'exemple de compilation et d'exécution des résultats ci-dessus est le suivant :
1.9 2.9 3.4 3.5 Total is 11.7 Max is 3.5
boucle foreach
JDK 1.5 introduit un nouveau type de boucle, appelé boucle foreach ou boucle améliorée, qui peut parcourir un tableau sans utiliser d'indices.
Exemple
Cet exemple est utilisé pour afficher tous les éléments du tableau myList :
public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // 打印所有数组元素 for (double element: myList) { System.out.println(element); } } }
Les résultats de compilation et d'exécution de l'exemple ci-dessus sont les suivants :
1.9 2.9 3.4 3.5
数组作为函数的参数
数组可以作为参数传递给方法。例如,下面的例子就是一个打印int数组中元素的方法。
public static void printArray(int[] array) { for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } }
下面例子调用printArray方法打印出 3,1,2,6,4和2:
printArray(new int[]{3, 1, 2, 6, 4, 2});
数组作为函数的返回值
public static int[] reverse(int[] list) { int[] result = new int[list.length]; for (int i = 0, j = result.length - 1; i < list.length; i++, j--) { result[j] = list[i]; } return result; }
以上实例中result数组作为函数的返回值。
Arrays 类
java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。具有以下功能:
给数组赋值:通过fill方法。
对数组排序:通过sort方法,按升序。
比较数组:通过equals方法比较数组中元素值是否相等。
查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。
具体说明请查看下表:
序号
方法和说明
1 public static int binarySearch(Object[] a, Object key)
用二分查找算法在给定数组中搜索给定值的对象(Byte,Int,double等)。数组在调用前必须排序好的。如果查找值包含在数组中,则返回搜索键的索引;否则返回 (-(插入点) - 1)。
2 public static boolean equals(long[] a, long[] a2)
如果两个指定的 long 型数组彼此相等,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
3 public static void fill(int[] a, int val)
将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
4 public static void sort(Object[] a)
对指定对象数组根据其元素的自然顺序进行升序排列。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
以上就是【java教程】Java 数组的内容,更多相关内容请关注PHP中文网(www.php.cn)!