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

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

関連記事

JFreeChartの折れ線グラフ(LineChart)をより綺麗に見せるための11個のテクニック

(0)目次&概説 (1) 記事の目的 (2) LineChartの表示改善  (2-1)【線】線の太さを変更  (2-2)【線】各シリーズ(Series)毎に折れ線の色を設定  (2-3)【線】各シリ …

Javaの選択ソートとは?アルゴリズムの流れ+サンプルプログラムをご紹介

<目次> (1) バイナリ―サーチとは?Javaのサンプルプログラムを用いて解説  (1-1) バイナリ―サーチのアルゴリズム  (1-2) バイナリ―サーチの性能(処理回数)  (1-3) バイナリ …

JFreeChartで描画したグラフをJSP/Servlet画面に表示する方法

(0)目次&概説 (1) 記事の目的  (1-1) 目的 (2) 表示方法の概要  (2-1) 表示の仕組み  (2-2) 実装の手順 (3) サンプルプログラム  (3-1) JSPのサンプルプログ …

InputStreamやInputStreamReaderやBufferedReaderの機能や役割の違い+速度測定で比較をした結果共有

(0)目次&概説 (1) 記事の目的  (1-1) 目的  (1-2) 前提条件 (2) InputStreamやBufferedReaderとは?  (2-1) 概要  (2-2) InputStr …

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

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

  • English (United States)
  • 日本語
Top