生成新的数组时不知道数组的长度,怎么才能初始化

vincentv587 2014-03-18 11:26:11

public class lg03{
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 newArr[]=null; //不知道新的数组的长度,怎么才能初始化啊?纠结。。
int j=0;
for(int i=0;i<oldArr.length;i++){
if(oldArr[i]==0){;}else{
newArr[j]=oldArr[i];
j++;
}
}
for(int k=0;k<newArr.length;k++){
System.out.println("newArr[k]="+newArr[k]+"\t");
}
}
}

...全文
558 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kissoday 2014-03-18
  • 打赏
  • 举报
回复

public class lg03{
   public static void main(String[] args){
      int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};  
      List<Integer> tmpList = new ArrayList<Integer>();
      //int newArr[]=null;  //不知道新的数组的长度,怎么才能初始化啊?纠结。。
      int j=0;      
      for(int i=0;i<oldArr.length;i++){
         if(oldArr[i]==0){;}else{
         //newArr[j]=oldArr[i];
         tmpList.add(oldArr[i]);
         j++;
         }
      }
     f
     // for(int k=0;k<newArr.length;k++){
      //System.out.println("newArr[k]="+newArr[k]+"\t");
      //}
      for(int k=0;k<tmpList.size();k++){
      System.out.println("tmpList[k]="+tmpList.get(k)+"\t");
      }
    }
}
如果你执意要要用数组的话,可以用List的长度去定义数组的长度。 希望对你有帮助
tony4geek 2014-03-18
  • 打赏
  • 举报
回复
那么你用集合
vincentv587 2014-03-18
  • 打赏
  • 举报
回复
按要求是需要生成新的数组,数组不包含 0. 新的数组长度有变化,不知道怎么才能初始化...

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧