Home > プログラミング > [Java]配列から指定した値を持つ要素を削除する

[Java]配列から指定した値を持つ要素を削除する

JavaにはArrayListのような便利な配列クラスが存在します。
どうしても通常の配列を使わなければならない場合、どうすれば配列から指定した値を持つ要素を削除できるか考えてみました。

ソースコード

public class ArrayElementDeleteTest {
	// 配列の要素数の定義
	private static final int ELEMENT_NUM = 20;
	// 配列から削除する要素の値の定義
	private static final int DELETE_NUM = 10;
	
	public static void main (String args[]) {
		// 配列の作成
		int[] array = new int[ELEMENT_NUM];
		
		// 配列に0から19までの値を格納
		for (int i = 0; i < array.length; i++) {
			array[i] = i;
		}
		
		// 配列の各要素を表示
		System.out.println("削除前の配列");
		for (int i = 0; i < array.length; i++) {
			System.out.print(array[i] + " ");
		}
		
		// 配列から指定した値を持つ要素を削除
		for (int i = 0; i < array.length; i++) {
			if (array[i] == DELETE_NUM) {
				// 要素数を一つ減らした配列を宣言
				int[] temp = new int[array.length - 1];
				System.arraycopy(array, 0, temp, 0, i);
				System.arraycopy(array, i + 1, temp, i, array.length - i - 1);
				array = temp;
				break;
			}
		}
		
		// 配列の各要素を表示
		System.out.println("");
		System.out.println("削除後の配列");
		for (int i = 0; i < array.length; i++) {
			System.out.print(array[i] + " ");
		}
	}
}

実行結果

削除前の配列
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 
削除後の配列
0 1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18 19 

まとめ

当たり前の事すぎて他の人にはあまり役に立たないかも・・・

もっと上手い方法があれば教えてください〜!

Comments:0

Comment Form

Trackbacks:0

TrackBack URL for this entry
http://www.kadoppe.net/mt/mt-tb.cgi/87
Listed below are links to weblogs that reference
[Java]配列から指定した値を持つ要素を削除する from CreativeStyle

Home > プログラミング > [Java]配列から指定した値を持つ要素を削除する

Search
Feeds
Blog Parts

あわせて読みたい フィードメーター - CreativeStyle この日記のはてなブックマーク数 kadoppeさんの体重グラフ

Return to page top