回答受付が終了しました

ID非公開

2021/1/17 0:07

22回答

配列から指定した要素を削除するということはできますか?

回答(2件)

0

Javaの配列は、固定サイズです。 配列オブジェクト生成時に容器のサイズは決まり、 以後変更できません。 ・ある要素を削除したら減る なんてことは、できないです。 要素を増減できるのは、コレクション。 ArrayList もそのひとつ。 コレクション一切使わず、配列だけで.... ということなら、 ・削除 の作戦は成り立たない。 たとえば、以下ですかね。 (1) 結果用配列をいったん仮作成、要素数はAと同じで。 (2) Aの各要素をループ参照、その個々について B にあるか? を調べ、「ない」ときだけ(1)に格納 (3) 上記ループ終われば、何個格納したか分かるはず。結果仮配列の部分配列(先頭から格納個数文だけ)をコピー生成し、戻り値として返す。 まぁ、手間・不毛です。 コレクション使えば1の手間で済むところを10かける的な。

0

配列では削除することはできません。 やるなら、元の配列Xと同じサイズの配列Yを作っておき、Xから1要素ずつ必要なものだけYに書き込む形です。 ArrayListが使えれば削除も追加も簡単にできます。

ID非公開

質問者

2021/1/17 11:51

メソッドの中で配列をArrayListに変換してその作業をして配列に戻すことはできますか?