在 JAVA 中从向量(任何集合)中删除元素

问题描述 投票:0回答:1

如何使用 remove(Object o) 从 JAVA 中的 Integer 类型 Vector 中删除元素? 这是我所做的一小段。我是 Java 的新手。


    Vector<Integer> v = new Vector<>();

    v.add(1);
    v.add(2);
    v.add(3);

    Object remInd = v.remove(0);    // Index based, THIS WORKS!!!
        
    boolean remElem = v.remove("3");    // HOW TO MAKE THIS WORK? IT ALWAYS RETURNS 'false'


        // I tried this, it works.

    Object num = 3;
        
    boolean remElem = v.remove(num);    // returns 'true'


java vector collections
1个回答
0
投票

在一个你试图删除一个

String
但集合包含整数:

v.remove("3");

如果您想将字符串转换为值,则可以选择:

v.remove(Integer.parseInt("3"));

但这也是为什么自动装箱会导致问题的一个很好的例子。这里应该发生什么,删除

index 1
处的第二个元素或删除
value 1
处的第一个元素?

v.remove(1);

这样做很清楚应该删除整数类型的值:

v.remove(Integer.valueOf(1));
© www.soinside.com 2019 - 2024. All rights reserved.