zoukankan      html  css  js  c++  java
  • java.lang.UnsupportedOperationException处理办法

    一、背景

    对list进行操作时,抛出异常java.lang.UnsupportedOperationException

    二、原因

    通过Arrays.asList()转集合生成的List是Arrays内部类ArrayList(Arrays$ArrayList),不是java.util.ArrayList;

    Arrays的内部类ArrayList和java.util.ArrayList都是继承AbstractList,remove、add等方法都是父类AbstractList中的方法,remove、add等方法在AbstractList中是默认throw UnsupportedOperationException而且不作任何操作。

    java.util.ArrayList重写这些方法而Arrays的内部类ArrayList没有重写,所以会抛出异常。

    同样的Addall,removeAll因为调用了add,remove方法一样会抛这个异常。

    三、解决方案

    所以,通过Arrays.asList()生成的List不能使用add,addAll,remove,removeAll等方法,需要转成java.util.ArrayList才行。

    3.1 通过新建一个java.util.ArrayList

    3.2 通过stream流操作转java.util.ArrayList

  • 相关阅读:
    实验10 使用PBR实现策略路由
    实验9 使用route-policy控制路由
    实验8 filter-policy过滤路由
    实验7 ISIS多区域配置
    实验6 IS-IS基本配置
    MySQL复制表
    mysql数据备份
    mysql 创建用户,授权
    数据库
    mysql 修改文件记录:
  • 原文地址:https://www.cnblogs.com/gezp/p/15697211.html
Copyright © 2011-2022 走看看