按以下要求编写程序:
•现有如下数组:
int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;
•要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为:
int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5}
•代码直接写在主方法中。
public class Arrayuse {
public static void main(String[] args) {
int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
int i,cnt=0,j=0;//cnt是计数器,计算数组中不为0的个数,目的是后边建立新数组。
for(i=0;i<oldArr.length;i++)
{
if(oldArr[i]!=0)
cnt++;
}
int newArr[]=new int[cnt];//cnt的目的,注意数组建立的方法。
for(i=0;i<oldArr.length;i++)//可以直接这样计算出数组的长度,代码简单
{
if(oldArr[i]!=0)
newArr[j++]=oldArr[i];
}
for(i=0;i<newArr.length;i++)
{
System.out.print(newArr[i]);//打印新数组
}
}
}
总结:1.注意数组的建立方式,
(1)int a[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
(2)int a[]=new int[cnt];cnt为元素个数;