【Java】2次元(多次元)配列の使い方やソート・検索方法などまとめて解説!
  • facebookページ
  • twitterページ
  • 2021.01.29

    【Java】2次元(多次元)配列の使い方やソート・検索方法などまとめて解説!

    Javaの2次元(多次元)配列とは?

    この記事では、Javaの2次元配列について解説します。

    2次元配列は、1次元配列に縦の並びを加えた配列です。

    そして、2次元配列の配列を多次元配列と言います。

    配列については、以下の記事で詳しく説明しています。

    【関連記事】
    ▶︎【Java入門】配列と初期化について

    2次元配列を宣言する

    2次元配列を使うには、まず宣言する必要があります。

    宣言方法は、次のように記述できます。

    もしくは、1文で記述してもOKです。

    2次元配列を宣言するときは、「[ ]」(ブラケット)記号を2つ並べます。

    これによって、行と列の2つの要素数を指定可能です。

    要素数は必ずしも同じ必要はないので、例えば「行は2」「列は3」といったように書けます。

    2次元配列を初期化する

    2次元配列を初期化するには、次のように記述します。

    値全体を「{}」(中括弧)で括ります。

    その中でさらに「{}」で括り、1行目、2行目…と値を格納していきます。

    「値1-1」が「1行目の1列目」、「値1-2」が「1行目の2列目」といった形です。

    また、次のように初期化してもOKです。

    2次元配列に追加して表示

    では、実際にプログラムを動かして確認してみましょう。

    次のように、scoresという2次元配列に値を1つずつ追加してみます。

    それぞれ、追加した値が出力されました。

    また、2次元配列の初期化と追加を同時に行う方法もあります。

    今回は、for文も使って出力方法を変えてみました。

    どちらの追加方法でも問題なく行えますので、お好みのやり方を試してみてください。

    2次元配列の要素数を取得するには?

    要素数を取得するにはどうすればいいですか?

    要素数(長さ)を取得するには、lengthメソッドを使いましょう!

    使い方は簡単で、要素数を取得したい配列に「.length」を追記する形で使います。

    ポテパンダの一言メモ

    取得できる要素数は列数と等しくなります。

    実際に、プログラムを動かして確認してみます。

    より詳しい内容は、次の記事をチェックしてみてください。

    【関連記事】
    ▶︎【Java基礎】サッと理解!文字列・配列の長さをlengthで取得する(よく使うサンプルコード付き)

    2次元配列をソートする

    2次元配列をソートするには、自作でComparableインターフェースを実装することで実現できます。

    記述例は次の通りです。

    ソートを行うために、Arrayクラスのsortメソッドを使用しました。

    上記のプログラムを実行すると、次の結果を取得できます。

    国語の成績を基準に、意図した処理でソートできているのがわかります。

    ポテパンダの一言メモ

    ソートについては以下の記事でも解説していますので、あわせて確認してみてください。

    【関連記事】
    ▶︎【Java】listの要素を並び替える ソート処理の方法について解説

    2次元配列で検索する

    ここでは、2次元配列で値を検索する方法を紹介します。

    配列を検索するには、ArrayクラスのbinarySearchメソッドを使いましょう。

    binarySearchメソッドは、ソートされた配列内の要素を検索するメソッドです。

    では、サンプルを元に動きを確認してみます。

    for文の中で、binarySearchメソッドを用いて検索処理をしています。

    出力の際に、元の配列の並びを再現するために、if文で条件を変えています。

    上記のプログラムを実行することで、SEARCH_NUMBERで指定した値が出現する、一番最初の配列を出力します。



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE