为了账号安全,请及时绑定邮箱和手机立即绑定

在我的代码中出现错误如何修复它?

在我的代码中出现错误如何修复它?

MM们 2021-11-11 16:21:43
我有以下代码: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(); 的错误。我将如何解决这个问题,而不使用强制转换
查看完整描述

2 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

方法的参数是原始类型的,这就是为什么当你对它进行 get 操作时,你会得到一个对象类型。 Integer v = (Integer)L1.removeFirst();

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

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


查看完整回答
反对 回复 2021-11-11
?
GCT1015

TA贡献1827条经验 获得超4个赞

请尝试

Integer v = (Integer)L1.removeFirst();


查看完整回答
反对 回复 2021-11-11
  • 2 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信