java将数组中小于60的数去掉再生成一个新的数组

2025-02-24 17:27:59
推荐回答(3个)
回答1:


/**
 * 2015年4月17日下午5:37:25
 * @author season TODO
 *
 */
public class DeleteNumInArray {
    /**
     * getTagNumTotal TODO 获取数组中一共有多少个要删除的数字  
     * @param yourArr
     * @param tagNum
     * @return  int
     */
    public static int getTagNumTotal(int[] yourArr, int tagNum){
        int total  = 0;
        
        for(int index =0; yourArr!= null && index< yourArr.length; index++)
            if(yourArr[index] == tagNum)
                total++;
        return total;
    }
    
    /**
     * delNumInArray TODO 在数组中删除数字  
     * @param yourArr 数组
     * @param delNum 需要被删除的数字
     * @return  int[] 返回删除之后的新数组
     */
    public static int[] delNumInArray(int[] yourArr, int delNum){
        int[] newArr = new int[yourArr.length-getTagNumTotal(yourArr, delNum)];
        int fg=0;
        for(int index= 0; yourArr!=null && index < yourArr.length; index++){
            if(yourArr[index] != delNum){
                newArr[fg++] =  yourArr[index];
            }
        }
        
        return newArr;
    }
    
    /**
     * display TODO 显示数组的所有元素  
     * @param arr  void
     */
    public static void display(int[] arr){
        System.out.println();
        for(int index =0; arr!=null && index< arr.length; index++)
            System.out.print(arr[index]+"   ");
    }
    
    public static void main(String[] args){
        
        int[] yourArr = new int[10];
        
        for(int index =0; index< yourArr.length; index++)//赋初值
            yourArr[index] =index;
        
        display(yourArr);
        
        
        
        display(delNumInArray(yourArr, 3));//删除数组里面的3
    }

}

回答2:

循环遍历这个数组,发现值大于等于60就拷贝到新的数组里就好了

回答3:

就是循环加判断嘛,编程这种东西,想学好,得自己敲敲敲,,,
你的编程水平跟你敲的代码量是成正比的,这个东西欠不下也急不得,就算欠下了 迟早也是要还的。