已知,數(shù)組int?oldArr[]={1,2,3,4,5,0,0,6,7,4}
將以上數(shù)組中值為0的項(xiàng)去掉,將不為0的值存入一個新的數(shù)組,生成的新數(shù)組為int?newArr[]={1,2,3,4,5,6,7,4}
應(yīng)該如何編寫代碼,自己只能將0的元素去掉后打印輸出成1,2,3,4,5,6,7,4??????應(yīng)該怎能打印成int?newArr[]={1,2,3,4,5,6,7,4}????求詳細(xì)解釋
2 回答
已采納

損失函數(shù)
TA貢獻(xiàn)114條經(jīng)驗(yàn) 獲得超93個贊
public static void arrayDemo()
{
int oldArr[]={1,2,3,4,5,0,0,6,7,4};
List<Integer> convertList = new ArrayList<Integer>();
for (int old : oldArr) {
if(old != 0)
{
convertList.add(old);
}
}
Object[] newArr = convertList.toArray();
for (Object object : newArr) {
System.out.println(object);
}
}
如果不明白,我再來加上注釋。
望采納!

慕萊塢9220042
TA貢獻(xiàn)377條經(jīng)驗(yàn) 獲得超508個贊
你好:
我自己寫了一個,可能代碼比較笨拙,你可以看下:
public?static?void?main(String[]?args)?{ ???????? int?oldArr[]?=?{1,2,3,4,5,0,0,6,7,4}; int?j?=?0; //要定義新數(shù)組的長度計(jì)算 int?newArrLenght?=?0; for?(int?i?=?0;?i?<?oldArr.length;?i++)?{ if(oldArr[i]?!=?0){ newArrLenght++; } } //初始化新數(shù)組,循環(huán)取出非零數(shù)字添加到新數(shù)字里 int?newArr[]?=?new?int[newArrLenght]?; for?(int?i?=?0;?i?<?oldArr.length;?i++)?{ if(oldArr[i]?!=?0){ newArr[j]?=?oldArr[i]; j++; } } for?(int?i?=?0;?i?<?newArr.length;?i++)?{ if(i?==?0){ System.out.print("int?newArr[]={"?+?newArr[i]?+?","); }else?if(i?==?newArr.length-1){ System.out.print(newArr[i]?+?"}"); }else{ System.out.print(newArr[i]?+?","); } } ???}
望采納!
添加回答
舉報(bào)
0/150
提交
取消