【Java入門】arraycopyを使った配列について

今回は、Javaのarraycopyを使用した配列についての内容になります。

配列の要素を上書きする際に使用するものなので、分からない方はこの記事を読んで学んでみませんか?

最後まで読んで頂けると幸いです!

では、Javaのarraycopyを使用した配列について解説していきます!

arraycopyとは?

まずは、arraycopyの指定方法について解説していきます!

System.arraycopy(上書き元配列, 上書き元配列の開始位置, 上書き先配列, 上書き先配列の開始位置, 上書き数);

では、解説していきます!

arraycopyを使用する際には、上書きを行う配列と上書きされる配列の2つを用意する必要があります。

では、arraycopyについては理解できましたが、arraycopyを用いてどのように上書きを行うかご存知でしょうか?

次の内容は、配列の上書きを行う方法について解説していきます!

配列の上書きを行う方法

下記のコードが配列の上書きを行う方法になります!

String language1[] = {"Java", "Swift", "C-Language", "Python", "PHP"};
String language2[] = {"HTML", "CSS", "JavaScript", "Ruby", "Go", "Kotlin", "Objective-C", "Rust"};
System.arraycopy(language1, 0, language2, 0, 3);
System.out.println(Arrays.asList(language1));
// 出力結果 [Java, Swift, C-Language, Python, PHP]
System.out.println(Arrays.asList(language2));
// 出力結果 [Java, Swift, C-Language, Ruby, Go, Kotlin, Objective-C, Rust]

では、上記のコードについて解説していきます!

まず1行目と2行目では、配列を定義しています。

次に3行目では、language1の配列をlanguage2の配列に上書きを行います。

上書きする数は3行目の最後の部分で「3」と指定しています。

なので、language2の「HTML」「CSS」「JavaScript」が「Java」「Swift」「C-language」に上書きされます!

なので6行目では、「[Java, Swift, C-Language, Ruby, Go, Kotlin, Objective-C, Rust]」が出力されました!

まとめ

いかがでしたか?

今回の内容はJavaのarraycopyを使用した配列について解説させて頂きました。

Javaで上書きを行う際によく使用しますので、是非活用してみて下さい!

また、配列メソッドを使用せずに上書きをする方法は、下記の記事で解説していますので、良ければ読んでみて下さい!