0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Java学習 配列

Posted at

Rubyの配列との違い

Rubyの配列は、格納する要素の数を最初に決める必要がない。
Javaの配列は、格納する要素の数を最初に決める必要がある。また、後で要素数を変更することができない。
要素を増やす場合、サイズの大きな配列を新たに作成して元データをコピーする、ArrayListというリストの一種を使用する2つの方法がある。
ArrayListとは、要素の数を変更できる配列のようなもの。そのため、ウェブアプリケーション開発ではよく使用される。

Javaの配列

配列の使い方

class Main {
  public static void main(String[] args) {
    int[] scores;
    scores = new int[3];

    scores[0] = 1;
    scores[1] = 5;
    scores[2] = 10;

    System.out.println(scores[0]);
    System.out.println(scores[1]);
    System.out.println(scores[2]);
  }
}

以下が出力される。

1
5
10

配列を使用する際の手順

Javaで配列を使用する際は、以下の手順が必要になる。

  1. 配列の宣言
  2. 配列の要素を作成し、配列に代入
  3. 配列の要素に値を代入

1. 配列の宣言を行う

配列の宣言は以下のように行う。

int[] scores;

変数を宣言する時と同様。
変数宣言時 int score;
配列宣言時 int[] scores;
「 int 」は要素として格納したいデータ型を指定するもので、long型の整数を格納する配列なら long[] scores; のように宣言する。

2. 配列の要素を作成し、配列に代入

次に、配列の要素を作成して、それを配列に代入する。

scores = new int[3];

上記の右辺部分( new int[3]; )でint型の要素を3つ作成。
そして、上記のように配列scoresに代入している。
ここまでのコードで、「配列の宣言」「配列に3つの要素を代入する受け皿を用意する」の2つのことができた。

3. 配列の要素に値を代入

最後に代入を行う。

scores[0] = 1;
scores[1] = 5;
scores[2] = 10;

記述の仕方はRubyと同様。
「1番目」を表すインデックスとして「0」、「2番目」を表すインデックスとして「1」を指定することもRubyと同じ。

また、配列の要素を取り出すときは、以下のように行います。

scores[0]

この書き方もRubyと同様。

配列の基本的な使い方は以上です。

配列のさまざまな記述方法

配列の宣言方法として、以下の3種類がある。

1.配列の宣言と同時に、要素の作成も行う方法

int[] scores;
scores = new int[3];

上記は、以下のように1行で記述することもできます。

int[] scores = new int[3];

2.配列の宣言時に型推論を使用する方法

変数の宣言で使用した型推論は、配列でも使用することができる。

var scores = new int[3];

3.配列の宣言から値の代入まで全て同時に行う方法

配列の宣言時に代入する値が確定している場合は、以下のように宣言と代入を同時に行い、記述を省略することができる。

int[] scores = {1, 5, 10};

簡潔に記述できるが、宣言時に代入する値が確定していない場合は使用できない。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?