1. 程式人生 > 其它 >刪除陣列中的元素

刪除陣列中的元素

  1. 刪除陣列中的元素:
import java.util.Arrays;
class JavaVer15{
	
	public static void main(String[] agre)
	{
		int arrays[] = {1,2,3,4,5,6,7,8};
		/*
		長度為8;把第二個元素3去掉
		*/
		
		System.out.println("刪除前的陣列:"+Arrays.toString(arrays));
		
		//交換陣列位置:
		// arrays[2] = arrays[3];
		// arrays[3] = arrays[4];
		// arrays[4] = arrays[5];
		// arrays[5] = arrays[6];
		// arrays[6] = arrays[7];
		// arrays[7] = 0;
		int ele = 5;
		int index= -1;
		for(int i = 0;i<=arrays.length-1;i++)
		{
			if(arrays[i]==ele)
			{
				index = i;
			}
		}
		if(index!=-1)
		{
				for(int i =index;i<=arrays.length-2;i++)//相當於執行上段程式碼;需求:去掉3,末尾加0
			{
				arrays[i] = arrays[i+1];
			}
			arrays[arrays.length-1]=0;
			
			
		}
		else
		{
			System.out.println("您輸入的元素陣列中沒有。");
		}
		System.out.println("刪除後的陣列:"+Arrays.toString(arrays));
				
	}
}
  1. 對方法進行呼叫:
import java.util.Arrays;
class JavaVer15{
	public static void getMoth(int []arr,int num)
	{	
		int index= -1;
		for(int i = 0;i<=arr.length-1;i++)
		{
			if(arr[i]==num)
			{
				index = i;
			}
		}
		if(index!=-1)
		{
				for(int i =index;i<=arr.length-2;i++)//相當於執行上段程式碼;需求:去掉3,末尾加0
			{
				arr[i] = arr[i+1];
			}
			arr[arr.length-1]=0;
			
			
		}
		else
		{
			System.out.println("您輸入的元素陣列中沒有。");
		}
	}
	public static void main(String[] agre)
	{
		int arrays[] = {1,2,3,4,5,6,7,8};
		/*
		長度為8;把第二個元素3去掉
		*/
		
		System.out.println("刪除前的陣列:"+Arrays.toString(arrays));
		
		//交換陣列位置:
		// arrays[2] = arrays[3];
		// arrays[3] = arrays[4];
		// arrays[4] = arrays[5];
		// arrays[5] = arrays[6];
		// arrays[6] = arrays[7];
		// arrays[7] = 0;
		int ele = 5;
		getMoth(arrays,ele);
				
		System.out.println("刪除後的陣列:"+Arrays.toString(arrays));
		
	}
}
  1. 優化:輸入一個數組元素,刪除
import java.util.Arrays;
import java.util.Scanner;
class JavaVer15{
	public static void getMoth(int []arr,int num)
	{	
		int index= -1;
		for(int i = 0;i<=arr.length-1;i++)
		{
			if(arr[i]==num)
			{
				index = i;
			}
		}
		if(index!=-1)
		{
				for(int i =index;i<=arr.length-2;i++)//相當於執行上段程式碼;需求:去掉3,末尾加0
			{
				arr[i] = arr[i+1];
			}
			arr[arr.length-1]=0;
			
			
		}
		else
		{
			System.out.println("您輸入的元素陣列中沒有。");
		}
	}
	public static void main(String[] agre)
	{
		int arrays[] = {1,2,3,4,5,6,7,8};
		/*
		長度為8;把第二個元素3去掉
		*/
		
		System.out.println("刪除前的陣列:"+Arrays.toString(arrays));
		
		//交換陣列位置:
		// arrays[2] = arrays[3];
		// arrays[3] = arrays[4];
		// arrays[4] = arrays[5];
		// arrays[5] = arrays[6];
		// arrays[6] = arrays[7];
		// arrays[7] = 0;
		Scanner sc = new Scanner(System.in);
		System.out.print("請輸入要刪除元素:");
		int ele = sc.nextInt();
		
		getMoth(arrays,ele);
				
		System.out.println("刪除後的陣列:"+Arrays.toString(arrays));
		
	}
}