Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Java

Javaで複数の配列を結合する方法について

投稿日:2021年5月24日 更新日:

<目次>

(1) Javaで複数の配列を結合する方法について
 (1-1) 構文
 (1-2) サンプルプログラム

(1) Javaで複数の配列を結合する方法について

Javaで複数の配列を結合する方法ははいくつもありますが、今回はSystemクラスのarraycopyメソッドを使った方法を紹介します。

(1-1) 構文

(構文)

System.arraycopy([①コピー元配列],[②コピー元開始位置],[③コピー先配列],[④コピー先開始位置],[⑤コピー長]);

 

各引数の意味は次の通りです。
(表)
[①コピー元配列] コピー元の配列を指定します。
[②コピー元開始位置] コピー元の配列のコピー対象の開始位置(インデックス)を指定します。
[③コピー先配列] コピー先の配列を指定します。
[④コピー先開始位置] コピー先の配列のコピー先の開始位置(インデックス)を指定します。
[⑤コピー長] コピーする要素数を指定します。

(図111)arraycopyのイメージ図

(補足)Systemクラスとは?
 
「java.lang」パッケージに含まれるクラスで、Javaで使用できる様々な便利機能があります。インスタンス化する事が出来ないクラスで、「System.[メソッド名]」のように記述して使います。非常に良く使う標準出力(System.out.println)から、今回紹介する配列の連結(System.arraycopy)など色々な機能が利用できます。
 

(1-2) サンプルプログラム

このサンプルはarray1とarray2の内容を、array3にコピーして1つの配列にするプログラムです。array1は1文字目の「あ」から、array2は2文字目の「か」からそれぞれコピーしています。

(図121)

(サンプルプログラム)

public class IT0xxx_ArrayCopy {

  public static void main(String args[]) {
    //# コピー元
    String array1[] = {"あ","い","う","え","お"};
    String array2[] = {"B","か","き","く","け","こ"};
    //# コピー先
    String array3[] = new String[array1.length+array2.length];

    //# コピー①:array1をarray3の先頭にコピー
    System.arraycopy(array1, 0, array3, 0, array1.length);
    //# コピー②:array2の2文字目以降を、array3の空き位置からコ>ピー
    System.arraycopy(array2, 1, array3, array1.length, (array2.length-1));

    for(int i=0; i<array3.length; i++) {
      System.out.println(i+" : "+array3[i]);
    }
  }
}

 

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-Java

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

JSP/Servletで画面毎のアクセスカウンターを作成してみた(パート2:ソース解説編)

(1) 仕様について (2) ソースコード  (2-1) AccessCounter2.java   (2-1-1) サンプルPG   (2-1-2) サンプルPG解説  (2-2) DbConnec …

Javaで「XXX has been compiled by a more recent version of the Java Runtime~」エラー(UnsupportedClassVersionError)が出る原因と対処方法について

  <目次> (1) Javaで「XXX has been compiled by a more recent version of the Java Runtime~」エラー(Unsupp …

「サーブレットコンテナ」や「サーブレットのライフサイクル」とは?(サンプルプログラム付)

※本記事は「サーブレットとは?その役割やHelloWorldサンプルコードのご紹介」の続編です。 (0)目次&概説 (2) サーブレットコンテナの基本  (2-1) サーブレットコンテナとは?  (2 …

Javaのabstractとは?抽象クラスの概要やサンプルPGをご紹介

<目次> (1) Javaのabstractとは?抽象クラスの概要やサンプルPGをご紹介  (1-1) 抽象クラス(abstract)とは  (1-2) 抽象クラスの目的や用途  (1-3) 抽象クラ …

Javaのprintfで日付の書式設定を行う方法

<目次> (1) Javaのprintfで日付の書式設定を行う方法  (1-1) printfの基本構文  (1-2) 時刻に関するフォーマット  (1-3) 日付に関するフォーマット (1) Jav …

  • English (United States)
  • 日本語
Top