删除ArrayList表中的偶数

本文介绍了一种在Java中使用ArrayList删除所有偶数元素的方法。通过遍历列表并检查每个元素是否为偶数来实现这一目标。如果元素是偶数,则直接从列表中移除。此外,还强调了在使用List时正确选择ArrayList或LinkedList的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        今天在学习链表的时候,有一个小例题:删除表中的偶数,使用的是ArrayList。我所学习的《数据结构与算法分析》这本书中只给出了使用remove删除偶数的算法,其他的创建一个数组对象,从键盘接收数组元素等等,是我自己添加的。小程序如下:

public class Remove {
//删除表中的偶数
    public static void removeEvensVer1(List<Integer> lr1){
        int i = 0;
        while(i < lr1.size()){
            if(lr1.get(i) % 2 == 0){
                lr1.remove(i);
            }
            else
                i++;
        }
        System.out.println("When the array are removed, array are:");
        for(int j = 0;j < lr1.size();j++){
            System.out.print(lr1.get(j)+" ");
        }
        System.out.println();
    }

    @SuppressWarnings("null")
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        List<Integer> integer = new ArrayList<Integer>();
        System.out.println("Please get the length:");
        //while(scanner.hasNext()){
        int length = scanner.nextInt();
        System.out.println("Please input an array:");
        for(int i = 0;i<length;i++){
            integer.add(scanner.nextInt());
        }
    //}
        System.out.println("The array are:");
        for(int i = 0;i<integer.size();i++){
            System.out.print(integer.get(i)+" ");
        }
        System.out.println();
        removeEvensVer1(integer);
    }
}

    运行结果为:

 

   

注意:这个程序中容易出现的错误在于:使用List创建数组对象的时候。由于List包括两种实现方法:一种是LinkedList,另外一种是ArrayList。所以,一定要明确的指出你要new的是什么类型的数组。我在这里犯了错误,研究了很久。引以为戒!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值