[Javaの基本] Arraysクラスによって提供されるメソッド

目次

 

序文:

配列コピー

文字列に変換

ソート

検索する

それらが同じかどうかを判断します

充填


序文

配列は配列のツールクラスであり、並べ替え、検索、コピー、入力などの機能を実行できます。開発者の作業効率を大幅に向上させます。

 

配列コピー

System.arraycopy();と同様に Arraysは配列コピー用のcopyOfRangeメソッドを提供します。

違いはSystem.arraycopyです。これは、事前にターゲット配列を準備し、長さを割り当てる必要があります。copyOfRangeはソース配列のみを必要とし、戻り値を介してターゲット配列を取得できます。

さらに、ソース配列の終了位置を表すcopyOfRangeの3番目のパラメーターは使用できないことに注意してください。

import java.util.Arrays;
 
public class HelloWorld {
    public static void main(String[] args) {
        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
 
        // copyOfRange(int[] original, int from, int to)
        // 第一个参数表示源数组
        // 第二个参数表示开始位置(取得到)
        // 第三个参数表示结束位置(取不到)
        int[] b = Arrays.copyOfRange(a, 0, 3);
 
        for (int i = 0; i < b.length; i++) {
            System.out.print(b[i] + " ");
        }
 
    }
}

 

文字列に変換

配列の内容を出力する場合は、forループを1つずつトラバースして、1つずつ出力する必要があります。

ただし、配列には、配列を文字列に直接変換するtoString()メソッドが用意されているため、配列の内容を確認すると便利です。

import java.util.Arrays;
  
public class HelloWorld {
    public static void main(String[] args) {
        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
        String content = Arrays.toString(a);
        System.out.println(content);
  
    }
}

 

ソート

Arraysツールクラスはsortメソッドを提供します。このメソッドは、sort関数を完了するために1行のコードのみを必要とします。

import java.util.Arrays;
  
public class HelloWorld {
    public static void main(String[] args) {
        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
        System.out.println("排序之前 :");
        System.out.println(Arrays.toString(a));
        Arrays.sort(a);
        System.out.println("排序之后:");
        System.out.println(Arrays.toString(a));
  
    }
}

 

検索する

要素が表示される場所をクエリし
ます。binarySearchを使用して検索する前に、sortを使用して並べ替える必要があることに注意しください。
配列に同一の要素が複数ある場合、検索結果は不確実です。

import java.util.Arrays;
 
public class HelloWorld {
    public static void main(String[] args) {
        int a[] = new int[] { 18, 62, 68, 82, 65, 9 };
 
        Arrays.sort(a);
 
        System.out.println(Arrays.toString(a));
        //使用binarySearch之前,必须先使用sort进行排序
        System.out.println("数字 62出现的位置:"+Arrays.binarySearch(a, 62));
    }
}

 

それらが同じかどうかを判断します

2つの配列の内容が同じかどうかを比較します。2
番目の配列の最後の要素は8であり、最初の配列とは異なるため、比較結果はfalseです。

 

充填

同じ値を使用して配列全体を埋めます

import java.util.Arrays;
  
public class HelloWorld {
    public static void main(String[] args) {
        int a[] = new int[10];
  
        Arrays.fill(a, 5);
  
        System.out.println(Arrays.toString(a));
  
    }
}

 

おすすめ

転載: blog.csdn.net/qq_44624536/article/details/113525713