java - 我的代码中出现错误如何修复?

标签 java methods collections linked-list

我有以下代码:

public static void poistaKaikki32(LinkedList L1, Collection L2) {
        LinkedList<Integer> temp = new LinkedList<>();
        HashSet<Integer> L2Set = new HashSet<>(L2); 

        // first filter elements into temp
        while (L1.size() > 0) { // n loops
            int v = L1.removeFirst(); <--- getting error cannot convert object to int
            if (!L2Set.contains(v)) { 
                temp.addLast(v);      
            }
        }

        // add filtered values back to L1
        while (temp.size() > 0) {    
            L1.addLast(temp.removeFirst()); 
        }


    }

我在 int v = L1.removeFirst(); 上不断收到错误。在不使用强制类型转换的情况下,我该如何解决这个问题。

最佳答案

方法的参数是原始类型,这就是为什么当你对其执行 get 操作时,你会得到一个对象类型。要使此工作正常,请在执行 get 操作时使用 TYPECAST 它 Integer v = (Integer)L1.removeFirst();

或者更改方法参数类型LinkedList L1LinkedList<Integer> L1

但最好的方法是第二种更改参数类型

关于java - 我的代码中出现错误如何修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52757436/

相关文章:

Java通过方法设置变量

c++ - 是否可以使用循环对其所有类型执行类方法

java - 如何检查我的表中是否存在变量?

javascript - 如何从另一个函数中调用一个函数的方法

python - 检查 Python 的 `Counter` 中的元素数量

java - VLCJ 无法在客户端使用 http 打开音频流

java - 为什么不使用 ResourceBundle 而不是 Properties?

java - 为什么BindingResult必须跟在@Valid后面呢?

java - 安全地使用/交换 Collections.synchronizedList

java - Android DataBinding、onItemrangeMoved - 条目 block 何时在列表中移动?