Explication détaillée des tableaux Java cassés par les pirates les plus puissants du monde

La classe java.util.Arrays contient une fabrique statique qui permet aux tableaux d'être traités comme des listes. Voici les principaux points sur les tableaux:

Cette classe contient diverses méthodes pour manipuler le tableau (comme le tri et la recherche).
Les méthodes de cette classe lèvent NullPointerException si la référence de tableau spécifiée est null.
Déclaration de classe
Voici la déclaration de la classe java.util.Arrays:
classe publique Les tableaux étendent la
méthode de la classe Object

Méthode SN et description
1 static List asList (T a)
Cette méthode renvoie une liste de taille fixe prise en charge par le tableau spécifié.
2 static int binarySearch (byte [] a, byte key)
Cette méthode recherche le tableau d'octets spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
3 static int binarySearch (byte [] a, int fromIndex, int toIndex, byte key)
Cette méthode recherche le tableau d'octets spécifié dans la plage et utilise l'algorithme de recherche binaire pour spécifier la valeur.
4 static int binarySearch (char [] a, char key)
Cette méthode recherche le tableau de caractères spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
5 static int binarySearch (char [] a, int fromIndex, int toIndex, char key)
Cette méthode recherche un tableau de caractères spécifié dans une plage et utilise un algorithme de recherche binaire pour spécifier la valeur.
6 static int binarySearch (double [] a, double key)
Cette méthode recherche le double tableau spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
7 static int binarySearch (double [] a, int fromIndex, int toIndex, double key)
Cette méthode recherche le double tableau spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
8 static int binarySearch (float [] a, float key)
Cette méthode recherche un tableau spécifié de nombres à virgule flottante et utilise un algorithme de recherche binaire pour spécifier la valeur.
9 static int binarySearch (float [] a, int fromIndex, int toIndex, float key)
Cette méthode recherche un tableau de nombres à virgule flottante dans la plage spécifiée et utilise un algorithme de recherche binaire pour spécifier la valeur.
10 static int binarySearch (int [] a, int key)
Cette méthode recherche le tableau de type int spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
11 static int binarySearch (int [] a, int fromIndex, int toIndex, int key)
Cette méthode recherche le tableau de type int spécifié à l'aide de l'algorithme de recherche binaire pour spécifier la valeur.
12 static int binarySearch (long [] a, int fromIndex, int toIndex, long key) La
plage de recherche de cette méthode spécifie le tableau long et l'algorithme de recherche binaire est utilisé pour spécifier la valeur.
13 static int binarySearch (long [] a, long key)
Cette méthode recherche le long tableau spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
14 static int binarySearch (Object [] a, int fromIndex, int toIndex, Object key)
Cette méthode recherche le tableau spécifié dans la plage et utilise l'algorithme de recherche binaire pour spécifier l'objet.
15 static int binarySearch (Object [] a, Object key)
Cette méthode recherche le tableau spécifié et utilise l'algorithme de recherche binaire pour spécifier l'objet.
16 static int binarySearch (short [] a, int fromIndex, int toIndex, short key) La
plage de recherche de cette méthode spécifie le tableau court et l'algorithme de recherche binaire est utilisé pour spécifier la valeur.
17 static int binarySearch (short [] a, short key)
Cette méthode recherche le tableau court spécifié et utilise l'algorithme de recherche binaire pour spécifier la valeur.
18 static int binarySearch (T [] a, int fromIndex, int toIndex, T key, Comparator <? Super T> c)
Cette méthode recherche le tableau spécifié dans la plage et utilise l'algorithme de recherche binaire pour spécifier l'objet.
19 static int binarySearch (T [] a, T key, Comparator <? Super T> c)
Cette méthode recherche le tableau spécifié et utilise l'algorithme de recherche binaire pour spécifier l'objet.
20 static boolean [] copyOf (boolean [] original, int newLength)
Cette méthode copie le tableau spécifié, en interceptant ou en remplissant false (si nécessaire), de sorte que la copie ait la longueur spécifiée.
21 static byte [] copyOf (byte [] original, int newLength)
Cette méthode copie le tableau spécifié, en interceptant ou complété par des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
22 static char [] copyOf (char [] original, int newLength)
Cette méthode copie le tableau spécifié, en interceptant ou en remplissant avec null (si nécessaire), de sorte que la copie ait la longueur spécifiée.
23 static double [] copyOf (double [] original, int newLength)
Cette méthode copie le tableau spécifié, en interceptant ou complété avec des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
24 static float [] copyOf (float [] original, int newLength)
Cette méthode copie le tableau spécifié, tronqué ou complété par des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
25 static int [] copyOf (int [] original, int newLength)
Cette méthode copie le tableau spécifié, en le tronquant ou en le complétant avec des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
26 static long [] copyOf (long [] original, int newLength)
Cette méthode copie le tableau spécifié, en le tronquant ou en le complétant avec des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
27 static short [] copyOf (short [] original, int newLength)
Cette méthode copie le tableau spécifié, en interceptant ou complété par des zéros (si nécessaire), de sorte que la copie ait la longueur spécifiée.
28 static T [] copyOf (T [] original, int newLength)
Cette méthode copie le tableau spécifié, l'intercepte ou le remplit avec null (si nécessaire), de sorte que la copie ait la longueur spécifiée.
29 static <T, U> T [] copyOf (U [] original, int newLength, Class <? Extend T []> newType)
Cette méthode copie le tableau spécifié, l'intercepte ou le remplit avec null (si nécessaire), de sorte que La copie a la longueur spécifiée.
30 static boolean [] copyOfRange (boolean [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
31 static byte [] copyOfRange (byte [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
32 static char [] copyOfRange (char [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
33 static double [] copyOfRange (double [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
34 static float [] copyOfRange (float [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
35 static int [] copyOfRange (int [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
36 static long [] copyOfRange (long [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
37 static short [] copyOfRange (short [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
38 static T [] copyOfRange (T [] original, int from, int to)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
39 static <T, U> T [] copyOfRange (U [] original, int from, int to, Class <? Extend T []> newType)
Cette méthode copie le tableau spécifié dans la plage spécifiée d'un nouveau tableau.
40 static boolean deepEquals (Object [] a1, Object [] a2)
Cette méthode renvoie true si les deux tableaux spécifiés sont égaux.
41 static int deepHashCode (Object [] a)
Cette méthode retourne un code de hachage basé sur le "contenu profond" du tableau spécifié.
42 static String deepToString (Object [] a)
Cette méthode renvoie la représentation sous forme de chaîne du "contenu profond" du tableau spécifié.
43 statique booléen égal (booléen [] a, booléen [] a2)
Cette méthode renvoie true si les deux tableaux de valeurs booléennes spécifiés sont égaux.
44 static boolean equals (byte [] a, byte [] a2)
Cette méthode renvoie true si les deux tableaux d'octets spécifiés sont égaux l'un à l'autre.
45 static boolean equals (char [] a, char [] a2)
Cette méthode renvoie true si les deux tableaux de caractères spécifiés sont égaux.
46 static boolean equals (double [] a, double [] a2)
Cette méthode renvoie true si les deux tableaux doubles spécifiés sont égaux l'un à l'autre.
47 static boolean equals (float [] a, float [] a2)
Cette méthode renvoie true si les deux tableaux de nombres à virgule flottante spécifiés sont égaux.
48 static boolean equals (int [] a, int [] a2)
Cette méthode renvoie true si les deux tableaux d'entiers spécifiés sont égaux l'un à l'autre.
49 static boolean equals (long [] a, long [] a2)
Cette méthode renvoie true si les deux tableaux longs spécifiés sont égaux l'un à l'autre.
50 static boolean equals (Object [] a, Object [] a2)
Cette méthode renvoie true si les deux tableaux d'objets spécifiés sont égaux l'un à l'autre.
51 static boolean equals (short [] a, short [] a2)
Cette méthode renvoie true si les deux tableaux d'objets spécifiés sont égaux l'un à l'autre.
52 static void fill (boolean [] a, boolean val)
Cette méthode alloue chaque élément du tableau spécifié de valeurs booléennes.
53 static void fill (boolean [] a, int fromIndex, int toIndex, boolean val)
Cette méthode affecte la valeur booléenne de chaque élément dans la plage spécifiée du tableau booléen spécifié.
54 static void fill (byte [] a, byte val)
Cette méthode alloue la valeur d'octet de chaque élément du tableau d'octets spécifié.
55 static void fill (byte [] a, int fromIndex, int toIndex, byte val)
Cette méthode alloue la valeur d'octet de chaque élément dans la plage spécifiée du tableau d'octets spécifié.
56 static void fill (char [] a, char val)
Cette méthode affecte la valeur char spécifiée au caractère de chaque élément du tableau spécifié.
57 static void fill (char [] a, int fromIndex, int toIndex, char val)
Cette méthode affecte le caractère de chaque élément dans la plage spécifiée du tableau spécifié de la valeur char spécifiée.
58 static void fill (double [] a, double val)
Cette méthode affecte une valeur double spécifiée à la valeur double de chaque élément du tableau spécifié.
59 remplissage de vide statique (double [] a, int fromIndex, int toIndex, double val)
Cette méthode affecte une valeur double spécifiée à chaque élément de la plage spécifiée du tableau double spécifié.
60 static void fill (float [] a, float val)
Cette méthode d'allocation spécifie le nombre de valeurs flottantes pour spécifier la valeur en virgule flottante de chaque élément du tableau.
61 static void fill (float [] a, int fromIndex, int toIndex, float val)
Cette méthode d'allocation spécifie la valeur en virgule flottante de chaque élément dans la plage spécifiée du tableau de valeurs flottantes spécifié.
62 static void fill (int [] a, int val)
Cette méthode d'allocation spécifie la valeur int de chaque élément dans la plage spécifiée du tableau.
63 static void fill (int [] a, int fromIndex, int toIndex, int val)
Cette méthode d'allocation spécifie la valeur int de chaque élément dans la plage spécifiée du tableau.
64 static void fill (long [] a, int fromIndex, int toIndex, long val)
Cette méthode d'allocation spécifie la valeur longue de chaque élément dans la plage spécifiée du tableau.
65 static void fill (long [] a, long val)
Cette méthode d'allocation spécifie la valeur longue de chaque élément du long tableau spécifié.
66 static void fill (Object [] a, int fromIndex, int toIndex, Object val)
Cette méthode alloue chaque élément dans la plage spécifiée du tableau spécifié de l'objet référencé par l'objet spécifié.
67 static void fill (Object [] a, Object val)
Cette méthode alloue chaque élément du tableau spécifié par l'objet référencé par l'objet spécifié.
68 static void fill (short [] a, int fromIndex, int toIndex, short val)
Cette méthode alloue la valeur courte de chaque élément dans la plage spécifiée du tableau spécifié.
69 static void fill (short [] a, short val)
Cette méthode alloue la valeur courte de chaque élément du tableau court spécifié.
70 static int hashCode (boolean [] a)
Cette méthode renvoie un code de hachage basé sur le contenu du tableau spécifié.
71 static int hashCode (byte [] a)
Cette méthode renvoie un code de hachage basé sur le contenu du tableau spécifié.
72 static int hashCode (char [] a)
Cette méthode renvoie un code de hachage basé sur le contenu du tableau spécifié.
73 static int hashCode (double [] a)
Cette méthode retourne un code de hachage basé sur le contenu du tableau spécifié.
74 static int hashCode (float [] a)
Cette méthode retourne un code de hachage basé sur le contenu du tableau spécifié.
75 static int hashCode (int [] a)
Cette méthode retourne un code de hachage basé sur le contenu du tableau spécifié.
76 static int hashCode (long [] a)
Cette méthode retourne un code de hachage basé sur le contenu du tableau spécifié.
77 static int hashCode (Object [] a)
Cette méthode retourne un code de hachage basé sur le contenu du tableau spécifié.
78 static int hashCode (short [] a)
Cette méthode renvoie un code de hachage basé sur le contenu du tableau spécifié.
79 static void sort (byte [] a)
Le tableau d'octets spécifié par cette méthode est trié par ordre numérique croissant.
80 static void sort (byte [] a, int fromIndex, int toIndex)
Cette méthode trie le tableau d'octets spécifié dans la plage spécifiée dans l'ordre numérique croissant.
81 static void sort (char [] a)
Cette méthode trie le tableau char par ordre numérique croissant.
82 static void sort (char [] a, int fromIndex, int toIndex)
Cette méthode trie le tableau de caractères spécifié dans la plage spécifiée dans l'ordre numérique croissant.
83 static void sort (double [] a)
Cette méthode spécifie que le double tableau est trié par ordre numérique croissant.
84 static void sort (double [] a, int fromIndex, int toIndex)
Cette méthode trie le double tableau spécifié dans la plage spécifiée dans l'ordre numérique croissant.
85 static void sort (float [] a)
Cette méthode spécifie que le tableau de nombres à virgule flottante est trié par ordre numérique croissant.
86 static void sort (float [] a, int fromIndex, int toIndex)
Cette méthode trie le tableau flottant spécifié dans la plage spécifiée dans l'ordre numérique croissant.
87 static void sort (int [] a)
Le tableau de type int spécifié par cette méthode est trié par ordre numérique croissant.
88 static void sort (int [] a, int fromIndex, int toIndex)
Cette méthode trie le tableau de type int spécifié dans la plage spécifiée dans l'ordre numérique croissant.
89 static void sort (long [] a)
Le tableau long spécifié par cette méthode est trié par ordre numérique croissant.
90 static void sort (long [] a, int fromIndex, int toIndex)
Cette méthode applique l'ordre numérique croissant au long tableau spécifié dans la plage spécifiée.
91 static void sort (Object [] a)
Selon l'ordre naturel de ses éléments, cette méthode exécute un ordre croissant sur le tableau d'objets spécifié.
92 static void sort (Object [] a, int fromIndex, int toIndex)
Selon l'ordre naturel de ses éléments, cette méthode affecte la plage spécifiée du tableau d'objets spécifié dans l'ordre croissant.
93 tri statique vide (short [] a)
Le tableau court spécifié par cette méthode est trié par ordre numérique croissant.
94 tri statique vide (short [] a, int fromIndex, int toIndex)
Cette méthode exécute l'ordre numérique croissant pour le tableau spécifié de courts-circuits dans la plage spécifiée.
95 tri statique des vides (T [] a, Comparator <? Super T> c)
Les objets de cette méthode sont triés selon l'ordre de comparaison spécifié provoqué par le tableau spécifié.
96 static void sort (T [] a, int fromIndex, int toIndex, Comparator <? Super T> c)
Cette méthode trie la plage spécifiée du tableau d'objets spécifié selon l'ordre provoqué par le comparateur spécifié.
97 static String toString (boolean [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau booléen spécifié.
98 static String toString (byte [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau d'octets spécifié.
99 static String toString (char [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau de caractères spécifié.
100 static String toString (double [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du double tableau spécifié.
101 static String toString (float [] a)
Cette méthode retourne la représentation sous forme de chaîne du contenu du tableau float spécifié.
102 Chaîne statique toString (int [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau int spécifié.
103 static String toString (long [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du long tableau spécifié.
104 static String toString (Object [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau d'objets spécifié.
105 static String toString (short [] a)
Cette méthode renvoie la représentation sous forme de chaîne du contenu du tableau court spécifié.

Héritage de méthode
Cette classe hérite des méthodes des classes suivantes:

java.util.Object

// Le texte original provient du [Tutoriel Yibai], veuillez contacter l'auteur pour l'autorisation de réimpression commerciale, veuillez conserver le lien d'origine pour une réimpression non commerciale: https://www.yiibai.com/java/util/java_util_arrays.html

Concepts de base des
tableaux Un tableau fait référence à une collection de variables associées. Le tableau fourni dans le langage Java est utilisé pour stocker des éléments du même type avec une taille fixe.

Le type d'élément et la taille du tableau sont déterminés.

Affirmant que le tableau
doit d'abord déclarer une variable de tableau, vous pouvez utiliser le tableau dans votre programme. Voici la syntaxe de déclaration des variables de tableau:

dataType [] arrayRefVar; // Méthode préférée
ou
dataType arrayRefVar []; // Même effet, mais pas la méthode préférée
Remarque: Il est recommandé de déclarer les variables de tableau en utilisant le style de déclaration dataType [] arrayRefVar. Le style de dataType arrayRefVar [] est dérivé du langage C / C ++. Il est adopté en Java pour permettre aux programmeurs C / C ++ de comprendre rapidement le langage Java.

Voici des exemples de ces deux syntaxes:

double [] myList; // La méthode préférée
ou
double myList []; // L'effet est le même, mais pas la méthode préférée.
Création de données Le
langage Java utilise l'opérateur new pour créer un tableau. La syntaxe est la suivante:

arrayRefVar = new dataType [arraySize]; La
déclaration de syntaxe ci-dessus fait deux choses:

Un tableau est créé à l'aide de dataType [arraySize].
Affectez la référence du tableau nouvellement créé à la variable arrayRefVar.
La déclaration des variables de tableau et la création de tableaux peuvent être complétées avec une instruction, comme indiqué ci-dessous:

// Initialisation dynamique
dataType [] arrayRefVar = new dataType [arraySize];
De plus, vous pouvez également utiliser la méthode suivante pour créer un tableau.

// Initialisation statique, format simplifié
dataType [] arrayRefVar = {value0, value1,…, valuek};

// Initialisation statique, format complet
dataType [] arrayRefVar = new dataType [] {value0, value1,…, valuek};
Les éléments du tableau sont accessibles par index. L'index du tableau commence à 0, donc la valeur d'index est de 0 à arrayRefVar.length-1.

Le contenu du tableau créé à l'aide de la nouvelle méthode est la valeur par défaut du type de données correspondant.

Les tableaux sont également des types de données de référence. La seule différence entre les tableaux et les objets est que la mémoire du tas de l'objet stocke les propriétés de l'objet, tandis que la mémoire du tas du tableau stocke l'ensemble d'informations correspondant, y compris les index et les valeurs correspondantes.

Tableau multidimensionnel Un tableau
multidimensionnel peut être considéré comme un tableau de tableaux. Par exemple, un tableau bidimensionnel est un tableau unidimensionnel spécial et chaque élément est un tableau unidimensionnel, par exemple:

String str [] [] = new String [3] [4];
L'initialisation dynamique d'un tableau multidimensionnel (prenez un tableau bidimensionnel comme exemple)
alloue directement de l'espace pour chaque dimension, le format est le suivant:
dataType [ ] [] arrayName = new type [arraylenght1] [arraylenght2];
dataType peut être un type de données de base et un type de données composé, arraylenght1 et arraylenght2 doivent être des entiers positifs, arraylenght1 est le nombre de lignes et arraylenght2 est le nombre de colonnes.
Par exemple:

int a [] [] = new int [2] [3];
Passage par référence d'
un tableau Array est utilisé comme type de référence, et dans d'autres fonctions qui passent un tableau en paramètre, la modification du tableau dans cette fonction affectera certainement les données d'origine.

La méthode d'opération de tableau
Java fournit une certaine prise en charge de la bibliothèque pour les données.

Array copy
System.arraycopy (), le prototype de la fonction est:

public static void arraycopy (Object src,
int srcPos,
Object dest,
int destPos,
int length)

Je suppose que tu aimes

Origine blog.csdn.net/dcj19980805/article/details/114840186
conseillé
Classement