1. ホーム

[解決済み】Javaで配列の一部だけを取得する?[重複している]。

2022-03-26 09:38:09

質問

Javaで整数の配列を持っていますが、その一部だけを使いたいのです。Pythonではarray[index:]のようにすると、indexから配列が返されることを知っています。このようなことは、Javaで可能ですか?

どのように解決するのですか?

Javaでは配列の長さは不変です。そのため、目的の部分を新しい配列にコピーする必要があります。

使用方法 copyOfRange メソッドから java.util.Arrays(配列 クラスがあります。

int[] newArray = Arrays.copyOfRange(oldArray, startIndex, endIndex);

startIndex はコピーされる範囲の最初のインデックスで、これを含みます。

endIndex はコピーされる範囲の最終インデックスで、排他的です。(このインデックスは、配列の外側にあることもあります。)

   //index   0   1   2   3   4
int[] arr = {10, 20, 30, 40, 50};
Arrays.copyOfRange(arr, 0, 2);          // returns {10, 20}
Arrays.copyOfRange(arr, 1, 4);          // returns {20, 30, 40}
Arrays.copyOfRange(arr, 2, arr.length); // returns {30, 40, 50} (length = 5)