6の配列の6番目の要素に対する第3の値のArrays.fill()メソッドを使用
サンプルコード
public static void main(String[] args) {
int[] array = {1, 3, 4, 2, 5, 7, 0, 3};
System.out.println("修改前" + Arrays.toString(array));
Arrays.fill(array, 2, 6, 6);
System.out.println("修改后" + Arrays.toString(array));
}
出力:
3は6によって置換されている配列の6番目の要素の値に見出すことができます
次を理解するためにArrays.fill()のソースコードを見て
public static void fill(int[] a, int fromIndex, int toIndex, int val) {
rangeCheck(a.length, fromIndex, toIndex);
for (int i = fromIndex; i < toIndex; i++)
a[i] = val;
}
見つけることができ、実際には、また、内部循環、よりfromIndexのが大きいことや未満に等しい、と添字はtoIndexのvalの間で割り当てられています。
概要
開発者が自分自身は、この需要を達成するために場合は、次のように、それをリサイクルして行うことも推定されているが、いくつかの厳格なロジックのように、見落とされる傾向にあるが、あなたはArrays.fill()メソッドを使用している場合、それは最初の論理層を決定する必要があります:
private static void rangeCheck(int arrayLength, int fromIndex, int toIndex) {
if (fromIndex > toIndex) {
throw new IllegalArgumentException(
"fromIndex(" + fromIndex + ") > toIndex(" + toIndex + ")");
}
if (fromIndex < 0) {
throw new ArrayIndexOutOfBoundsException(fromIndex);
}
if (toIndex > arrayLength) {
throw new ArrayIndexOutOfBoundsException(toIndex);
}
}
これにはいくつかの間違いを避けるため、だけでなく、コードではなく、あなたがこれを実行することができる他の人に自分の習慣に、使用できますが、それは我々のテストのように、誰か他の人の考えと同じではないだろう、脳の回路は、多くの場合、非常に素晴らしいですその普通の人は、この時点では、非常に厳格なコードキーを考えることはできませんだと思うので、あなたは需要のいくつかの種類に実行する次の時間がない私たちは、これを達成するために、すでに良いパッケージではありませんJDKを考える、または考えますあなたが使用できるツールを既製、ホイールが良いの使用を選択することを学ぶ一方で、ホイールを作成繰り返さないでください。