1.需求:
目前存在数组:int[ ] arr = {0,0,12,1,0,4,6,0},编写一个函数接收该数组,然后把该数组的0元素清空,并返回一个不存在0元素的数组。
2.关键技术:
关键技术是要计算新数组的长度,新数组的长度=原来数组的长度-0元素的个数。
3.实例:
import java.util.*;
class Demo3{
public static void main(String[] args){
int[] arr = {0,0,12,1,0,4,6,0};
arr = clearZero(arr);
System.out.println("数组的元素:"+Arrays.toString(arr));
}
public static int[] clearZero(int[] arr){
//统计0的个数
int count = 0; //定义一个变量记录0的个数
for(int i = 0;i<arr.length;i++){
if(arr[i] ==0){
count++;
}
}
//创建一个新的数组
int[] newArr = new int[arr.length-count];
int index = 0; //新数组使用的索引值
//把非0的数据存储到新数组中。
for(int i = 0;i<arr.length;i++){
if(arr[i]!=0){
newArr[index] = arr[i];
index++;
}
}
return newArr;
}
}
运行结果如下图所示: