2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Java][初心者向け]2次元配列で要素を直接挿入する方法

Posted at

#はじめに
こんにちは、いわっちと申します。
JavaのArrayList<ArrayList<Integer>>などの、二次元配列についてです。

###投稿に至った経緯
先日、AtCoderさんのBeginner Contestに初参加させて頂きまして、その時に二次元配列を利用する問題がありました。

そして、模範解答に二次元配列に対して、要素を直接挿入する場面がありました。基本的に模範解答のコードに関してはC++がメインなので、Javaで書いてると模範解答とは少し違う部分があるのです。

Javaでは二次元配列に直接挿入するとエラーになってしまうので、注意です。よくよく考えれば、すぐ出来ることなのですが、私自身の忘備録も兼ねて投稿させて頂きました。

#2次元配列に要素を直接挿入
細かくいうと直接ではないのですw。やり方としては要素を挿入する前に、newで定義しておくという感じです。直接挿入するやり方は以下の通りです。

Main.java
ArrayList<ArrayList<Integer>> arrays = new ArrayList<ArrayList<Integer>>();

/* ここ */
for (int i = 0; i < index; i++) {
		ArrayList<Integer> array = new ArrayList<Integer>();
		arrays.add(array);
	}
/* */

arrays.get(index - 1).add(2000);

このfor文を入れないとエラーが起きてしまいます。C++だと定義しなくても直でいけるらしいですが、Javaだとダメみたいです。

#おわりに
以上です。これに関して特に言及しているサイトもなかったので、投稿してみました。

何かお力になれたら幸いです。

2
2
2

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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?