编程实现:将一个数组中值=0的项去掉,将不为0的值存入一个新的数组
例如:int a[]={5,0,0,6,6,0,5,4,7,6};
生成的新数组为: int b[]={5,6,6,5,4,7,6}
public static void main(String[] args) {
//自定义整数就行了,会自动去0
int[] arr = {4,0,4,8,4,0,555,0,434,0};
System.out.println(Arrays.toString(arr));
int[] arr1 = nums(arr);
System.out.println(Arrays.toString(arr1));
}
public static int[] nums(int...nums) {
//首先要过滤出0的数量
int[] arr = nums;
int count=0;
for(int i=0;i<arr.length;i++) {
if(arr[i]==0) {
count++;//如果不为0,则count++
}
}
//创建一个数组,用于接收目标数组中不为0的数,长度为原数组-count
int[] arr1 = new int[arr.length-count];
//使用循环中的if将原数组不为0的数赋值给新数组
for(int i=0,j=0;i<arr.length;i++) {
if(arr[i]!=0) {
arr1[j] = arr[i];
j++;
}
}
return arr1;
}
效果图:
拷贝即可使用哦~~~