java array class tutorial java
Aquest tutorial cobreix la classe Array a Java i els mètodes de la classe java.util.arrays juntament amb la descripció detallada i exemples de mètodes de classe Array:
La classe ‘Arrays’ és membre del paquet ‘java.util’. Aquesta és una part del marc de Java Collections i proporciona mètodes per crear, accedir i manipular matrius Java dinàmicament.
Tots els mètodes proporcionats per la classe Arrays són de naturalesa estàtica i són mètodes de la classe ‘Objecte’. Com que els mètodes són estàtics, es pot accedir mitjançant el propi nom de la classe.
=> Consulteu TOTS els tutorials de Java aquí.
Què aprendreu:
Classe Java Array
La classe Arrays es va introduir a Java 1.2 i els mètodes que conté s'utilitzen principalment per a la manipulació de la matriu, incloent cerques, ordenacions, etc. La classe de matrius proporciona mètodes sobrecarregats per a gairebé tots els tipus de dades.
A continuació es mostra la jerarquia de classes per a la classe Arrays:
La classe Arrays s'estén des de la classe Object i els seus mètodes són mètodes de la classe Object.
La sintaxi general per accedir a qualsevol mètode de la classe Arrays és:
Arrays.;
A la propera secció, enumerarem els diversos mètodes proporcionats per la classe Arrays.
Mètodes de matrius de Java
Les taules següents proporcionen una introducció als diversos mètodes proporcionats per la classe Arrays. Aquí hem detallat els principals mètodes. Tingueu en compte que la majoria dels mètodes estan sobrecarregats per proporcionar suport a tots els tipus primitius.
Enumerarem el prototip i la descripció de cadascuna de les funcions. A continuació, a la secció següent, descriurem alguns dels mètodes importants proporcionant exemples de programació.
Nom del mètode | Prototip | Descripció |
---|---|---|
static int binarySearch (doble () a, int fromIndex, int toIndex, doble clau) | Cerca la clau a l'interval especificat en una matriu doble | |
asList | Llista estàtica< T> asList (Objecte () a) | Retorna una llista (de mida fixa) de la matriu especificada |
binarySearch Aquest mètode utilitza l'algorisme de cerca binària. A la següent columna es mostren diverses sobrecàrregues del mètode binarySearch. | static int binarySearch (byte () a, clau de byte) | Cerca una clau en una matriu de bytes |
static int binarySearch (byte () a, int fromIndex, int toIndex, byte key) | Cerca la clau a l'interval especificat en una matriu de bytes | |
static int binarySearch (char () a, clau char) | Cerca una clau d'una matriu de caràcters | |
static int binarySearch (char () a, int fromIndex, int toIndex, key char) | Cerca la clau a l'interval especificat en una matriu de caràcters | |
static int binarySearch (doble () a, doble tecla) | Cerca una clau en una matriu doble | |
static int binarySearch (float () a, clau float) | Cerca una clau en una matriu de flotants | |
static int binarySearch (float () a, int fromIndex, int toIndex, float key) | Cerca la clau a l'interval especificat en una matriu flotant | |
static int binarySearch (int () a, clau int) | Cerca una clau en una matriu int | |
static int binarySearch (int () a, int fromIndex, int toIndex, int key) | Cerca la clau a l'interval especificat en una matriu int | |
static int binarySearch (llarga () a, clau llarga) | Cerca una clau en una matriu llarga | |
static int binarySearch (long () a, int fromIndex, int toIndex, key long) | Cerca la clau a l'interval especificat en una matriu llarga | |
static int binarySearch (objecte () a, clau d'objecte) | Cerca una clau d'una matriu d'objectes | |
static int binarySearch (Object () a, int fromIndex, int toIndex, Object key) | Cerca la clau a l'interval especificat a la matriu d'objectes | |
static int binarySearch (short () a, key short) | Cerca una clau en una sèrie de curts | |
static int binarySearch (curt () a, int fromIndex, int toIndex, clau curta) | Cerca la clau a l'interval especificat en una sèrie de pantalons curts | |
static int binarySearch (T () a, tecla T, comparador c) | Cerca una clau en una matriu d’objectes especificats | |
static int binarySearch (T () a, int fromIndex, int toIndex, clau T, comparador c) | Cerca la clau a l'interval especificat en una matriu d'objectes |
Nom del mètode | Prototip | Descripció |
---|---|---|
static long () copyOf (long () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
copyOf El mètode s'utilitza per copiar la matriu amb la longitud especificada. La següent columna llista les sobrecàrregues d’aquest mètode | static boolean () copyOf (booleà () original, int newLength) | Copia la matriu especificada. Trunca o afegeix valors 'falsos' si cal |
byte estàtic () copyOf (byte () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
static char () copyOf (char () original, int newLength) | Copia la matriu especificada. Trunca o afegeix nul si és necessari | |
static double () copyOf (double () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
static float () copyOf (float () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
static int () copyOf (int () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
static short () copyOf (short () original, int newLength) | Copia la matriu especificada. Trunca o afegeix zeros si cal | |
T estàtica () copyOf (T () original, int newLength) | Copia la matriu especificada. Trunca o afegeix valors nuls si cal | |
static T () copyOf (U () original, int newLength, ClassnewType) | Copia la matriu especificada. Trunca o afegeix valors nuls si cal | |
copyOfRange Aquest mètode s'utilitza per copiar un interval especificat a la matriu. Les sobrecàrregues d’aquest mètode es donen a la següent columna | static boolean () copyOfRange (booleà () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova |
byte estàtic () copyOfRange (byte () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static char () copyOfRange (char () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static double () copyOfRange (doble () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static float () copyOfRange (float () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static int () copyOfRange (int () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static long () copyOfRange (long () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static short () copyOfRange (short () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
T estàtic () copyOfRange (T () original, int from, int to) | Copia la matriu amb l'interval especificat en una matriu nova | |
static T () copyOfRange (U () original, int from, int to, ClassnewType) | Copia la matriu amb l'interval especificat en una matriu nova |
Nom del mètode | Prototip | Descripció |
---|---|---|
booleà estàtic és igual (doble () a, doble () a2) | Retorna cert si les dues matrius dobles especificades són iguals. | |
deepEquals | booleà estàtic deepEquals (Objecte () a1, Objecte () a2) | Comprova si dues matrius especificades són profundament iguals |
deepHashCode | static intdeepHashCode (objecte () a) | Retorna un codi hash de la matriu especificada |
deepToString | static StringdeepToString (Objecte () a) | Retorna el 'contingut profund' de la matriu especificada en una cadena |
És igual Comprova si dues matrius especificades són iguals | booleà estàtic és igual (booleà () a, booleà () a2) | Retorna cert si els dos booleanarrays especificats són iguals. |
booleà estàtic és igual (byte () a, byte () a2) | Retorna cert si les dues matrius de bytes especificades són iguals | |
booleà estàtic és igual (char () a, char () a2) | Retorna cert si les dues matrius de caràcters especificades són iguals. | |
booleà estàtic és igual (float () a, float () a2) | Retorna cert si les dues matrius flotants especificades són iguals. | |
booleà estàtic és igual (int () a, int () a2) | Retorna cert si les dues matrius int especificades són iguals. | |
booleà estàtic és igual (llarg () a, llarg () a2) | Retorna cert si les dues matrius llargues especificades són iguals. | |
booleà estàtic és igual (Objecte () a, Objecte () a2) | Retorna cert si les dues matrius d'objectes especificades són iguals. | |
booleà estàtic és igual (curt () a, curt () a2) | Retorna cert si les dues matrius curtes especificades són iguals. |
Nom del mètode | Prototip | Descripció |
---|---|---|
farciment de buit estàtic (doble () a, doble val) | Emplena la matriu doble amb el doble valor especificat | |
omplir Emplena la matriu (tots els elements) amb el valor especificat. La següent columna mostra les sobrecàrregues d'aquesta funció | farciment de buit estàtic (booleà () a, val booleà) | Emplena la matriu booleana amb un valor booleà especificat |
farciment de buit estàtic (booleà () a, int fromIndex, int toIndex, boolean val) | Assigna un valor booleà a l'interval especificat a la matriu booleana. | |
farciment de buit estàtic (byte () a, byte val) | Emplena la matriu de bytes amb un valor de byte especificat | |
farciment de buit estàtic (byte () a, int fromIndex, int toIndex, byte val) | Emplena la matriu de bytes amb el valor de byte especificat a l'interval donat | |
emplenament de buit estàtic (char () a, char val) | Emplena la matriu de caràcters amb el valor de caràcter especificat | |
emplenament de buit estàtic (char () a, int fromIndex, int toIndex, char val) | Emplena l'interval de matriu de caràcters amb el valor de caràcter especificat | |
farciment de buit estàtic (doble () a, int fromIndex, int toIndex, double val) | Assigna un valor doble a l'interval especificat a la matriu doble. | |
farciment de buit estàtic (float () a, float val) | Assigna valor flotant a l'interval especificat a la matriu flotant. | |
farciment de buit estàtic (float () a, int fromIndex, int toIndex, float val) | Assigna valor flotant a l'interval especificat a la matriu flotant. | |
farciment de buit estàtic (int () a, int val) | Assigna valor int a la matriu int. | |
farciment de buit estàtic (int () a, int fromIndex, int toIndex, int val) | Assigna valor int a l'interval especificat a la matriu int. | |
farciment de buit estàtic (llarg () a, int fromIndex, int toIndex, long val) | Assigna un valor llarg a l'interval especificat a la matriu llarga. | |
farciment buit estàtic (llarg () a, val llarg) | Assigna un valor llarg a la matriu llarga. | |
emplenament de buit estàtic (objecte () a, int fromIndex, int toIndex, object val) | Assigna referència d'objecte a l'interval especificat a la matriu d'objectes. | |
emplenament de buit estàtic (objecte () a, objecte val) | Assigna una referència d'objecte al conjunt d'objectes especificat | |
farciment de buit estàtic (curt () a, int fromIndex, int toIndex, short val) | Assigna un valor curt a l'interval especificat a la matriu curta. | |
farciment de buit estàtic (curt () a, curt val) | Assigna un valor curt a la matriu curta especificada. |
Nom del mètode | Prototip | Descripció |
---|---|---|
ordenació del buit estàtic (float () a) | Ordena la matriu flotant en ordre numèric ascendent. | |
Ordena Ordena la matriu passada com a paràmetre al mètode. Les sobrecàrregues es donen a la següent columna. | ordenació del buit estàtic (byte () a) | Ordena la matriu de bytes numèricament |
ordenació del buit estàtic (byte () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu | |
ordenació del buit estàtic (char () a) | Ordena la matriu de caràcters en ordre numèric ascendent. | |
ordenació del buit estàtic (char () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent. | |
ordenació del buit estàtic (doble () a) | Ordena la matriu doble en ordre numèric ascendent. | |
ordenació del buit estàtic (doble () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent. | |
ordenació del buit estàtic (float () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent. | |
ordenació del buit estàtic (int () a) | Ordena la matriu int en ordre numèric ascendent. | |
ordenació del buit estàtic (int () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent. | |
ordenació del buit estàtic (llarg () a) | Ordena la matriu llarga en ordre numèric ascendent. | |
ordenació del buit estàtic (llarg () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent | |
ordenació del buit estàtic (objecte () a) | Ordena la matriu d'objectes en ordre ascendent. L’ordenació es fa segons l’ordenació natural dels seus elements | |
ordenació del buit estàtic (objecte () a, int fromIndex, int toIndex) | Ordena l'interval especificat d'una matriu d'objectes en ordre ascendent. L’ordenació es fa segons l’ordenació natural dels seus elements. | |
ordenació del buit estàtic (curt () a) | Ordena la matriu del tipus short en ordre numèric ascendent. | |
ordenació de buit estàtic (curt () a, int fromIndex, int toIndex) | Ordena el rang d'elements de la matriu en ordre ascendent. | |
ordenació del buit estàtic (T () a, Comparador c) | Ordena la matriu d’objectes especificada. L'ordre d'ordenació s'indueix segons el comparador especificat. | |
ordenació del buit estàtic (T () a, int fromIndex, int toIndex, comparador c) | Ordena el rang d'elements d'una matriu d'objectes en l'ordre especificat pel comparador. |
Nom del mètode | Prototip | Descripció |
---|---|---|
static String toString (long () a) | Retorna una representació de cadena d'una matriu llarga | |
toString Aquest mètode retorna la representació de cadena d'una matriu determinada. A la següent columna es donen diferents sobrecàrregues d’aquest mètode | static String toString (booleà () a) | Retorna una representació de cadena d'una matriu booleana |
static String toString (byte () a) | Retorna una representació de cadena d'una matriu de bytes | |
static String toString (char () a) | Retorna una representació de cadena d'una matriu de caràcters | |
static String toString (doble () a) | Retorna una representació de cadena d'una matriu doble | |
static String toString (float () a) | Retorna una representació de cadena d'una matriu flotant | |
static String toString (int () a) | Retorna una representació de cadena d'una matriu int | |
static String toString (Object () a) | Retorna una representació de cadena d'una matriu d'objectes | |
static String toString (curt () a) | Retorna una representació de cadena d'una matriu curta |
Nom del mètode | Prototip | Descripció |
---|---|---|
static int hashCode (llarg () a) | Retorna el codi hash del contingut d'una matriu llarga | |
hashCode Aquest mètode retorna el codi hash del contingut de la matriu especificada Els mètodes sobrecarregats es donen a la següent columna. | static int hashCode (booleà () a) | Retorna el codi hash del contingut de la matriu booleana |
static int hashCode (byte () a) | Retorna el codi hash del contingut de la matriu de bytes | |
static int hashCode (char () a) | Retorna el codi hash del contingut de la matriu de caràcters | |
static int hashCode (doble () a) | Retorna el codi hash del contingut d'una matriu doble | |
static int hashCode (float () a) | Retorna el codi hash del contingut d'una matriu flotant | |
static int hashCode (int () a) | Retorna el codi hash del contingut d'una matriu int. | |
static int hashCode (objecte () a) | Retorna el codi hash del contingut de la matriu d'objectes | |
static int hashCode (curt () a) | Retorna el codi hash del contingut de la matriu curta |
Les taules anteriors mostren tots els mètodes que proporciona la classe Arrays. La majoria d’aquests estan sobrecarregats per a diversos tipus primitius.
Analitzem detalladament alguns d’aquests mètodes.
# 1) com a Llista
Prototip: Llista estàtica asList (Objecte () a)
Paràmetres: a - matriu d'objectes dels quals es farà còpia de seguretat de la llista.
Valor de retorn: Llista => llista de mida fixa de la matriu especificada
Descripció: Retorna una llista serialitzable de mida fixa recolzada per una matriu proporcionada com a argument.
Exemple:
import java.util.Arrays; import java.util.List; public class Main { public static void main(String() args) { String() months = {'January', 'February', 'March', 'April', 'May'}; // converted string array to a List using asList System.out.println('The string array converted to list:'); List month_list = Arrays.asList(months); System.out.println(month_list); } }
Sortida:
El programa anterior mostra l’ús del mètode ‘asList’ de la classe Arrays. Aquí hem declarat una matriu de cadenes i l’hem passat al mètode asList per obtenir una llista.
# 2) binarySearch
Prototip: static int binarySearch (int () a, clau int)
Paràmetres:
a => matriu on s'ha de cercar la clau
Clau => valor de l'element a cercar
Valor de retorn: int => posició (índex) en què es troba la clau, en cas contrari retorna (- (el 'punt d'inserció') - 1).
Descripció: Cerca la clau especificada a la matriu donada mitjançant un algorisme de cerca binari. Cal ordenar la matriu perquè funcioni la cerca binària. Si la matriu no està ordenada, els resultats no estan definits. A més, si hi ha diverses ubicacions a la matriu per al mateix valor de clau, la posició retornada no està garantida.
Exemple:
import java.util.Arrays; import java.util.List; public class Main { public static void main(String() args) { // define the Array int numArr() = { 23,43,26,65,35,16,74,27,98 }; //sort the array first Arrays.sort(numArr); System.out.println('Input array:' + Arrays.toString(numArr)); int key = 35; //call binarySearch function to search a given key System.out.println('Key ' + key + ' found at index = ' + Arrays .binarySearch(numArr, key)); } }
Sortida:
Primer, al programa anterior, ordenem la matriu d’entrada ja que per a binarySearch s’hauria d’ordenar la matriu. A continuació, la matriu i la clau a cercar es passen al mètode 'binarySearch'. A la sortida es mostra l'índex on es troba la clau.
Prototip: static int binarySearch (int () a, int fromIndex, int toIndex, int key)
Paràmetres:
a => matriu a cercar
fromIndex => índex inicial de l'interval sobre el qual s'ha de cercar la clau
toIndex => l'índex de l'últim element de l'interval
clau => clau a cercar
Valor de retorn: l’índex de l’element clau es troba a l’interval especificat. En cas contrari, torna (- (el 'punt d'inserció') - 1).
Descripció: Aquesta sobrecàrrega de binarySearch cerca un valor clau a l'interval especificat de la matriu i retorna la posició de l'índex de l'element clau si es troba. Cal ordenar la matriu i, per tant, l'interval perquè funcioni binarySearch. Si no s’ordena, els resultats no es definiran.
Exemple:
import java.util.Arrays; import java.util.List; public class Main { public static void main(String() args) { int numArr() = { 23,43,26,65,35,16,74,27,98 }; // define the Array Arrays.sort(numArr); //sort the array first System.out.println('Input array:' + Arrays.toString(numArr)); int key = 35; //call binarySearch function to search a given key System.out.println('Key ' + key + ' found at index = ' + Arrays .binarySearch(numArr,3,7, key)); } }
Sortida:
El programa anterior és el mateix que l'anterior, amb una diferència que en el mètode de crida al binarySearch hem especificat un interval de la matriu en què s'ha de realitzar la cerca.
# 3) copyOf
Prototip: static int () copyOf (int () original, int newLength)
Paràmetres:
original => matriu a copiar
newLength => longitud de la matriu copiada
Valor de retorn: Una nova matriu copiada de l'original i encoixinada o truncada amb zeros en funció d'una longitud especificada.
Descripció: Copia l'original de la matriu en una matriu nova i encoixina o la trunca amb zeros en funció de la longitud especificada.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the Array String strArr() = {'Java', 'Python', 'Perl', 'C', 'Ruby'}; // print the original array System.out.println('Original String Array: ' + Arrays.toString(strArr)); //copy the array into new array using copyOf and print it System.out.println('Copied Array: ' + Arrays.toString( Arrays.copyOf(strArr, 5))); } }
Sortida:
El programa anterior mostra l’ús del mètode ‘copyOf’ de la classe Arrays que copia la matriu donada en una de nova. El programa anterior copia la matriu de cadenes original en una matriu nova.
# 4) copyOfRange
Prototip: static int () copyOfRange (int () original, int from, int to)
Paràmetres:
original => matriu a partir de la qual s'han de copiar els valors de l'interval
De => primer índex de l'interval
A => últim índex de l'interval
Valor de retorn: Nova matriu amb valors de l'interval especificat amb zeros truncats o encoixinats per obtenir la longitud desitjada.
Descripció: Copia l'interval especificat d'una matriu determinada en una matriu nova. L'índex inicial de la matriu ha de ser inclusiu entre 0 i original.length. L'índex final pot ser exclusiu.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the Array String strArr() = {'Java', 'Python', 'Perl', 'C', 'Ruby'}; // print the original array System.out.println('Original String Array: ' + Arrays.toString(strArr)); //copy the array into new array using copyOfRange and print it System.out.println('Copied Range of Array: ' + Arrays.toString( Arrays.copyOfRange(strArr,1,3))); } }
Sortida:
Hem modificat el programa anterior per utilitzar el mètode 'copyOfRange' que copia un interval específic de la matriu i forma una matriu nova. Al programa anterior, hem especificat l'interval com 1, 3. Per tant, la sortida mostra una nova matriu de 2 elements.
# 5) Iguals
Prototip: booleà estàtic és igual (int () a, int () a2)
bons llocs per veure animis gratis
Paràmetres:
a => primera matriu que es prova per a la igualtat
A2 => segona matriu per provar la igualtat
Valor de retorn: Retorna cert si ambdues matrius són iguals.
Descripció: Aquest mètode comprova si ambdues matrius són iguals i retorna els resultats. Es diu que les dues matrius són iguals si ambdues matrius tenen un nombre igual d’elements i els elements corresponents en ambdues matrius són iguals.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define two arrays, array_One and array_Two int() array_One = { 1, 3, 5, 7 }; int() array_Two = { 1, 3, 5, 7 }; //print the arrays System.out.println('array_One = ' + Arrays.toString(array_One)); System.out.println('array_Two = ' + Arrays.toString(array_Two)); //use equals method to check for equality of arrays booleanarray_equal = Arrays.equals(array_One, array_Two); //print the results if (array_equal) { System.out.println('equals method returns ' + array_equal + ', hence arrays array_One and array_Two are equal
'); }else { System.out.println('equals method returns ' + array_equal + ', hence arrays array_One and array_Two are not equal
'); } // define two more arrays, firstArray&secondArray int() firstArray = { 2, 4, 6, 8 }; int() secondArray = { 1, 3, 5, 7}; //display these arrays System.out.println('firstArray = ' + Arrays.toString(firstArray)); System.out.println('secondArray = ' + Arrays.toString(secondArray)); //use equals method to check equality of arrays boolean test_array = Arrays.equals(firstArray, secondArray); //print the results if (test_array) { System.out.println('equals method returns ' + test_array + ', hence arrays firstArray and secondArray are equal
'); }else { System.out.println('equals method returns ' + test_array + ', hence arrays firstArray and secondArray are not equal
'); } } }
Sortida:
El programa anterior mostra el mètode 'iguals'. Aquí hem utilitzat dos conjunts de matrius i anomenats 'iguals' dues vegades. En la primera crida a iguals, ambdues matrius són iguals i, per tant, el mètode torna cert. A la segona crida a iguals, les dues matrius són diferents i el mètode torna fals.
# 6) Omplir
Prototip: farciment de buit estàtic (int () a, int val)
Paràmetres:
a => matriu a omplir
val => valor que cal omplir a tots els llocs de la matriu
Valor de retorn: Cap
Descripció: Emplena la matriu amb el valor especificat.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the array int() intArray = { 1, 3, 5, 7 }; //print original array System.out.println('The original array: ' + Arrays.toString(intArray)); //call fill method to fill the array with all zeros Arrays.fill(intArray, 0); //print altered array System.out.println('Array after call to fill:' + Arrays.toString(intArray)); } }
Sortida:
El programa anterior mostra la versió bàsica del mètode d’ompliment. Aquí, només omplim tota la matriu amb un altre valor. En aquest cas, hem omplert la matriu amb tots els zeros.
Prototip: farciment de buit estàtic (int () a, int fromIndex, int toIndex, int val)
Paràmetres:
a => matriu el rang del qual s'ha d'omplir
fromIndex => índex d'inici de l'interval
toIndex => índex final de l'interval
val => valor amb el qual s'han d'omplir els elements de l'interval
Valor de retorn: Cap
Descripció: Emplena l'interval especificat des de l'Index fins a l'Index de la matriu 'a' amb el valor especificat. Si fromIndex = toIndex, l'interval a omplir és buit.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the array int() intArray = { 1, 3, 5, 7, 9, 11, 13, 15,17}; //print original array System.out.println('The original array: ' + Arrays.toString(intArray)); //call fill method to fill the range (2,6) in the array with zeros Arrays.fill(intArray, 2, 6, 0); //print altered array System.out.println('Array after call to fill the range(2,6):' + Arrays.toString(intArray)); } }
Sortida:
Aquesta és una altra versió del mètode d'ompliment en què especifiquem l'interval concret de la matriu que s'ha d'omplir amb un valor diferent. Al programa anterior, hem especificat l'interval (2, 6) que s'haurà d'omplir amb zeros. Els altres elements segueixen sent els mateixos que es mostren a la sortida.
# 7) Ordena
Prototip: ordenació del buit estàtic (int () a)
Paràmetres: a => matriu per ordenar
Valor de retorn: Cap
Descripció: Aquest mètode ordena la matriu en ordre ascendent.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the array int() intArray = {10,4,25,63,21,51,73,24,87,18}; //print original array System.out.println('The original array: ' + Arrays.toString(intArray)); //call sort method to sort the given array in ascending order Arrays.sort(intArray); //print altered array System.out.println('Sorted array:' + Arrays.toString(intArray)); } }
Sortida:
El programa anterior ordena una matriu d'enters mitjançant el mètode d'ordenació de la classe Arrays i imprimeix la matriu ordenada.
Prototip: ordenació del buit estàtic (int () a, int fromIndex, int toIndex)
Paràmetres:
a => matriu des de la qual s'ha d'ordenar un interval
fromIndex => índex d'inici de l'interval
toIndex => índex final de l'interval
Valor de retorn: cap
Descripció: Ordena l'interval especificat des deIndex fins aIndex en ordre ascendent. Si fromIndex = toIndex, l'interval que cal ordenar és buit.
Exemple:
import java.util.Arrays; public class Main { public static void main(String() args) { // define the array int() intArray = {10,4,25,63,21,51,73,24,87,18}; //print original array System.out.println('The original array: ' + Arrays.toString(intArray)); //call sort method to sort the given range in the array in ascending order Arrays.sort(intArray, 2, 7); //print altered array System.out.println('Sorted range(2,7) in the array:' + Arrays.toString(intArray)); } }
Sortida:
El programa anterior mostra la variació del mètode de classificació. En això, podem especificar un interval sobre el qual s’ha d’ordenar la matriu. Els elements fora d’aquest interval no s’ordenen. Al programa anterior, l’interval (2,7) de la matriu donada s’especifica per ordenar-lo amb el mètode d’ordenació.
Per tant, a la sortida, podem veure que només els elements d’aquest rang s’ordenen en ordre ascendent.
# 8) a cadena
Prototip: static String toString (int () a)
Paràmetres: a => matriu la representació de la qual és necessària
Valor de retorn: cadena => representació de cadena de la matriu
Descripció: Converteix la matriu donada en la seva representació de cadena.
Exemple:
import java.util.*; public class Main { public static void main(String() args) { //declare arrays of type int and double int() intArray = {10,20,30,40,50}; double() dblArray = {1.0,2.0,3.0,4.0,5.0}; System.out.println('String representation of int Array: '); //print string representation of int array using toString System.out.println(Arrays.toString(intArray)); System.out.println('
String representation of double Array: '); //print string representation of double array using toString System.out.println(Arrays.toString(dblArray)); } }
Sortida:
A l'exemple anterior, hem utilitzat el mètode toString que converteix les matrius en una representació de cadena. Per demostrar aquest mètode, hem utilitzat dues matrius cadascuna de tipus int i double. A continuació, mitjançant el mètode toString, cadascuna d'aquestes matrius es converteix a la representació de cadena corresponent que es mostra a la sortida.
# 9) hashCode
Prototip: static int hashCode (int () a)
Paràmetres: a => matriu el codi hash del qual s'ha de calcular.
Valor de retorn: int => hashcode calculat
Descripció: El mètode retorna el codi hash d'una matriu determinada. El hashcode d'un Java L’objecte és en realitat un número de 32 bits (signat int). Mitjançant l'hashcode podeu gestionar un objecte mitjançant una estructura basada en l'hash.
JVM assigna Hashcode a un objecte i sol ser únic tret que els dos objectes siguin iguals entre si, en aquest cas els dos objectes tindran el mateix hashcode.
Exemple:
import java.util.*; public class Main { public static void main(String() args) { //declare arrays of type int int() intArray = {10,20,30,40,50}; //print the input array System.out.println('The input Array: ' + Arrays.toString(intArray)); //get hashcode of the array using 'hashCode' method of array inthashCde = Arrays.hashCode(intArray); //print the hashCode System.out.println('The hashCode for input array:' + hashCde); } }
Sortida:
El mètode hashCode calcula el codi hash de la matriu donada que se li ha passat com a argument.
Preguntes freqüents
P # 1) Què són les matrius java.util?
Resposta: La classe java.util.Arrays s'estén des de la classe java.lang.Object. La classe Arrays conté el mètode per representar matrius com una llista. També conté diversos mètodes per manipular les matrius com ordenar, buscar, representar matrius com a cadenes, etc.
Q # 2) Quina classificació s'utilitza en la classificació de matrius a Java?
Resposta: El mètode d'ordenació de la classe Arrays a Java utilitza dues tècniques d'ordenació. Utilitza quicksort quan s’utilitzen tipus primitius mentre que quan s’utilitzen objectes que implementen una interfície comparable, s’utilitza la classificació per combinació.
P # 3) Què fa el mètode Arrays.sort () a Java?
Resposta: El mètode Arrays.sort () de Java té diverses sobrecàrregues mitjançant les quals podeu realitzar una classificació de matrius. Té sobrecàrregues per ordenar diferents matrius de tipus de dades primitives.
A més, el mètode Arrays.sort () té diverses sobrecàrregues per ordenar una matriu en un interval especificat. A part d'això, el mètode Arrays.sort () també ens permet ordenar en funció del comparador proporcionat.
Q # 4) Què són les classes de col·leccions i matrius?
Resposta: Les col·leccions tenen una naturalesa dinàmica i la classe Col·leccions proporciona mètodes directes que actuen sobre les col·leccions. Les matrius són de naturalesa estàtica i tenen matrius de classe que proporcionen mètodes per manipular matrius.
Però aquests no són mètodes directes, és a dir, els objectes Array no poden invocar aquests mètodes. En canvi, es passa un objecte de matriu com a argument a aquests mètodes.
Conclusió
La classe Arrays pertany al paquet java.util i s’estén des de la classe java.lang.Object. La classe Arrays conté mètodes que s’utilitzen per manipular matrius. Aquests mètodes inclouen els que s’utilitzen per ordenar matrius, buscar un element concret en matrius, omplir la matriu amb un valor específic, mètodes per comparar matrius, etc.
Cadascun d'aquests mètodes té diverses sobrecàrregues que permeten al programador invocar aquests mètodes en matrius de diferents tipus de dades i també en matrius parcials o sencers.
En aquest tutorial, hem comentat la majoria dels mètodes de classe d'arrays. També vam veure una breu descripció i exemples dels mètodes principals. Aquests exemples es poden replicar per a diversos tipus de dades i us ho deixem.
=> Visiteu aquí per aprendre Java des de zero.
Lectura recomanada
- Tutorial de longitud de matriu de Java amb exemples de codi
- Matriu dentada a Java: tutorial amb exemples
- Tutorial JAVA per a principiants: més de 100 tutorials pràctics de vídeo Java
- Què és Java Vector | Tutorial de Java Vector Class amb exemples
- Com ordenar una matriu a Java: tutorial amb exemples
- Inverteix una matriu a Java: 3 mètodes amb exemples
- Matriu genèrica de Java: com simular matrius genèrics a Java?
- Java Copy Array: Com copiar / clonar un array a Java