目次
序文
配列は配列のツールクラスであり、並べ替え、検索、コピー、入力などの機能を実行できます。開発者の作業効率を大幅に向上させます。
配列コピー
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));
}
}