コピーする範囲に最終インデックスの配列要素が含まれないのはなぜですか?Javaで配列をコピーする
例:
class ArrayCopyOfDemo {
public static void main(String[] args) {
char[] copyFrom = {'d', 'e', 'c', 'a', 'f', 'f', 'e',
'i', 'n', 'a', 't', 'e', 'd'};
char[] copyTo = java.util.Arrays.copyOfRange(copyFrom, 2, 9);
System.out.println(new String(copyTo));
}
}
結果: "カフェイン"
(文字を含むインデックス9で配列要素を(含まれていないコピーする範囲A)
ソース:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html
ありがとうございましたあなたの答えはありがとうございます。
これはすべてのJava範囲と一貫しています。開始インデックスは含まれていますが、終了インデックスは含まれていません。例えば、 'String.substring'も参照してください。 – Mena
これは、メソッドがどのように動作するのか... https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html# – Flikk
あなたが投稿したリンクの中で、なぜ "copyOfRange"メソッドの**第2パラメータ**がコピーされる範囲の最初のインデックスであることに注意してください* *包括的**、**第3パラメータ**はコピーされる範囲の最終的なインデックスです** **排他的に**。 –