Tres formas de declarar arreglos, recorrido de arreglos multidimensionales y resumen de métodos comunes de la clase Arrays

1. Tres formas de declarar una matriz

public static void main(String[] args) {
    //第一种
    int[] a=new int[3];
    a[0]=1;
    a[1]=2;
    //第二种
    int[] b={1,2,3};
    //第三种
    int[] c=new int[]{1,2,4};
    
    int [][] a=new int[2][]{
   
   {1,2},{3,4,5}};//这种赋值方法是错误的
    int [2][] a=new int[][]{
   
   {1,2},{3,4,5}};//这种赋值方法是错误的
    int [2][] a=new int[2][]{
   
   {1,2},{3,4,5}};//这种赋值方法是错误的

    //这种是可以的
    int [][] b=new int[2][];
    b[0]=new int[3];
    b[1]=new int[4];

    score2=new int[][]{
   
   {1,2,3},{3,4,5,6},{16,7}};//静态初始化
}

2. Recorrido de arreglos multidimensionales

score2=new int[][]{
   
   {1,2,3},{3,4,5,6},{16,7}};//静态初始化
for (int i = 0; i < score2.length; i++) {
    for (int j = 0; j < score2[i].length; j++) {
        System.out.print(score2[i][j]+" ");
    }
    System.out.println();
}

3. Métodos comunes de la clase Arrays

1. Llene la matriz: llenar

int[] a=new int[3];
Arrays.fill(a,2);
for (int i = 0; i <a.length ; i++) {
    System.out.print(a[i]+" ");
}

Resultado: 2 2 2
Análisis: Asignar 2 a todos los valores

int[] a=new int[5];
Arrays.fill(a,1,3,8);
for (int i = 0; i <a.length ; i++) {
    System.out.print(a[i]+" ");
}

El resultado es: 0 8 8 0 0
Análisis: Asigne 8 al bit 1 (basado en 0) al bit 3 (exclusivo)

2. Clasificación de elementos de matriz: ordenar

int[] a=new int[]{3,2,5,4,1};
Arrays.sort(a);
for (int i = 0; i <a.length ; i++) {
    System.out.print(a[i]+" ");
}

El resultado es: 1 2 3 4 5
Análisis: Ordena todos los números en orden ascendente

int[] a=new int[]{3,2,5,4,1};
Arrays.sort(a,1,4);
for (int i = 0; i <a.length ; i++) {
    System.out.print(a[i]+" ");
}

El resultado es: 3 2 4 5 1

Análisis: ordenar del 1.° (basado en 0) al 4.° (exclusivo)

3. Compare los elementos de la matriz para la igualdad: es igual a

int[] a=new int[]{3,2,5,4,1};
int[] b=new int[]{3,2,5,4,1};
System.out.println(Arrays.equals(a,b));

El resultado es: verdadero

int[] a=new int[]{3,2,5,4,1};
int[] b=new int[]{3,2,5,4,1};
System.out.println(Arrays.equals(a,b));

El resultado es: false
Si es arr1.equals(arr2), devolverá false, porque equals compara las direcciones de los dos objetos, no los números dentro, y Arrays.equals anula a equals, así que aquí puede comparar si los elementos son iguales

4. Método de búsqueda binaria para encontrar el valor de índice (subíndice) del elemento especificado: binarySearch

int []arr = {10,20,30,40,50};
System.out.println(Arrays.binarySearch(arr, 20));

El resultado es: 1
Análisis: El elemento se puede encontrar y el subíndice de retorno es 1 (a partir de 0)

int []arr = {10,20,30,40,50};
System.out.println(Arrays.binarySearch(arr, 35));

El resultado es: -4
Análisis: No se encontró ningún elemento, devuelva -x, comience a contar desde -1, si el título, devuelva -4

int []arr = {10,20,30,40,50};
System.out.println(Arrays.binarySearch(arr, 0,3,30));

El resultado es: 2
Análisis: encuentra 30 de 0 a 3 dígitos (exclusivo), lo encontró, en 2, devuelve 2

int []arr = {10,20,30,40,50};
int []arr1 = Arrays.copyOf(arr, 3);
output(arr1);

Resultado: 10 20 30
Análisis: interceptar 3 elementos de la matriz arr y asignarlos a la matriz de apellidos arr1

int []arr = {10,20,30,40,50};
int []arr1 = Arrays.copyOfRange(arr,1,3);
output(arr1);

Resultado: 20 30
Análisis: interceptado desde la primera posición (basado en 0) hasta la tercera posición (excluyendo)
[1] https://blog.csdn.net/liu_yanzhao/article/details/70847050
[2] http:// www.runoob.com/java/java-array.html
[3] http://baijiahao.baidu.com/s?id=1601084106055683243&wfr=spider&for=pc

Supongo que te gusta

Origin blog.csdn.net/MCYZSF/article/details/88918046
Recomendado
Clasificación