Exception in thread “main“ java.lang.UnsupportedOperationException at java.base/java.util.Abstra

【信息系统项目管理师】第1章:信息化发展 考点梳理 本文主要详细梳理高项:信息化、新型基础设施建设、两化融合、数字中国、数字化转型与元宇宙等内容。 阅读详情

错误内容如下:

Exception in thread "main" java.lang.UnsupportedOperationException
    at java.base/java.util.AbstractList.add(AbstractList.java:153)
    at java.base/java.util.AbstractList.add(AbstractList.java:111)
    at java.base/java.util.AbstractCollection.addAll(AbstractCollection.java:352)
    at com.BasicHSFConsumer.main(BasicHSFConsumer.java:89)

实验1:

不会报错

   List<String> missionNumbers = Collections.emptyList();
   List<String> nums = new ArrayList<>();

    List<String> collect1 = nums.stream().collect(Collectors.toList());
    missionNumbers.addAll(collect1);

实验2:

会报错

        List<String> missionNumbers = Collections.emptyList();
        List<String> nums = new ArrayList<>();
        nums.add("1");
        List<String> collect1 = nums.stream().collect(Collectors.toList());
        missionNumbers.addAll(collect1);

实验2:

不会报错

List<String> missionNumbers = new ArrayList<>();
        List<String> nums = new ArrayList<>();
        nums.add("1");
        List<String> collect1 = nums.stream().collect(Collectors.toList());
        missionNumbers.addAll(collect1);

原因是什么?

在编译阶段不会报错,调用的时候才会出现这个错误。但是返回的明明是ArrayList对象,为什么不支持大小可变的add或者remove操作呢?

原来这里并不是我们常用的ArrayList,而是private定义的一个内部类,只是名字也叫 ArrayList 而已,通过查看源码,这个类里面并没有add、remove等方法。

至此问题终于找到了,此ArrayList非彼ArrayList。

SAP会计凭证导入ABAP开发模板+注意点—附带源码 开发并不仅仅只要考虑实现的功能,只实现功能的是程序,考虑到使用场景的是工程。使用bapi校验创建会计凭证的数据,报错和参数和正式创建一致。用途,防止产生错误的凭证,即使财务凭证可以冲销。正式创建会计凭证。隐藏的坑。 阅读详情

相关推荐

PLC作为Modbus TCP客户端

PLC作为Modbus TCP客户端,Modbus Slave作为服务器

soledad_chao的博客 4377

java.lang.UnsupportedOperationException 异常的解决方法及相关原因

java.lang.UnsupportedOperationException解决方法

小时候超帅的博客 3万+

Python量化交易实战:如何用pytdx库快速解析通达信.day文件(附完整代码)

本文详细介绍了如何使用Python的pytdx库高效解析通达信.day本地数据文件,构建免费、稳定的量化交易数据源。文章提供了从环境配置、基础数据读取、复权处理到板块信息获取的完整实战代码,并演示了如何将处理后的数据无缝接入Backtrader等回测框架,为量化策略开发提供可靠的数据基础。

ppp33的博客 1141

java.lang.UnsupportedOperationException原因分析及解决

java.lang.UnsupportedOperationException原因分析及解决 前言 今天搬砖时,在使用Array.asList把数组转化 为list时,在对转化的list添加删除数据时,出现了java.lang.UnsupportedOperationException异常信息。 一、原因分析       首先来看下面的代码。 List<String> list = Arrays.asList("Kobe",

一直扫地僧 9476

基于STM32和MPU6050的手势控制小车设计与实现

MPU6050传感器:用于检测手势变化,采集加速度和陀螺仪数据。STM32微控制器:处理MPU6050传感器的数据,根据手势变化控制小车的运动。电机驱动模块:接收来自STM32的控制信号,驱动小车的电机,实现小车的前进、后退、左转和右转。小车底盘:作为整个系统的机械部分,提供移动平台。MPU6050是一款集成了3轴加速度计和3轴陀螺仪的传感器,具有高精度、低功耗和小体积等特点。它通过I2C接口与微控制器通信,可以实时采集加速度和角速度数据,广泛应用于运动检测、姿态控制和手势识别等领域。

m0_57781768的博客 2307

告别MATLAB!用Python的PYPOWER搞定电力系统潮流计算(附Case30完整代码)

本文介绍了如何从MATLAB迁移到Python,使用PYPOWER工具包进行电力系统潮流计算。通过详细的环境准备、数据接口兼容性实践、潮流计算实现及最优潮流计算进阶,帮助工程师和学生无缝过渡到Python生态。文章还展示了结果处理与可视化技巧,并附有Case30完整代码示例。

weixin_30411819的博客 297

java.lang.UnsupportedOperationException解决方法

前言: 在工作中我们会经常操作集合,有的时候会碰到程序抛出标题中提到的异常,这个翻译过来就很好理解,不支持操作的异常。但是你会很纳闷,明明自己操作的是集合的add方法,难道集合还不支持追加元素了? 那是因为此集合非彼集合。 正文: 我们还是先复现问题,在分析问题,最后解决问题。 1.复现问题 public class Demo34 { public static void main(String[] args) { String[] array = {"1","2","

jdk_wangtaida的博客 8534

STM32F407驱动OV2640摄像头:从SCCB协议到I2C模拟的保姆级避坑指南

本文详细介绍了STM32F407驱动OV2640摄像头的完整流程,重点解析SCCB协议与I2C的关键差异,并提供GPIO模拟实现方案。通过实战案例和调试技巧,帮助开发者避开常见陷阱,实现稳定的图像采集功能。

weixin_28700411的博客 345

Exception in thread "main" java.lang.UnsupportedOperationException at java.base/java.util.Immutable

由Exception in thread “main” java.lang.UnsupportedOperationException at java.base/java.util.ImmutableCollections.uoe(ImmutableCollections.java:71) at java.base/java.util.ImmutableCollections$AbstractIm...

jhon_knight的博客 2756

从选型到调试:MCU外部晶振电路设计的实战避坑指南

本文详细解析了MCU外部晶振电路设计的关键要点,从选型到调试提供全面指南。重点探讨了晶振频率选择、负载电容计算、PCB布局优化等核心问题,并分享常见故障排查技巧与EMC设计经验,帮助工程师规避设计陷阱,提升嵌入式系统时钟稳定性。

weixin_30872577的博客 276

Anomalib库安装以及使用

Anomalib是一个专注于异常检测的深度学习库。它的目标是收集最新的异常检测算法,并提供用于在公共和私有数据集上进行基准测试的工具。该库提供了一系列已实现的异常检测算法,这些算法在最近的文献中有所描述。此外,Anomalib还提供了一套工具,方便开发人员开发和实现自定义模型。该库特别注重基于图像的异常检测,旨在识别数据集中的异常图像或图像中的异常像素区域。通过使用Anomalib,用户可以快速构建和评估各种异常检测算法,以满足其特定需求。

mingo_敏 5197

Exception in thread “main“ java.lang.UnsupportedOperationException

文章目录问题描述复现异常堆栈信息原因分析 问题描述 在操作数组转换成List的时候,对其进行元素的添加或者删除的时候报错。 复现 private void testArrayCastToListError() { String[] strArray = new String[3]; List list = Arrays.asList(strArray); //对转换后的list插入一条数据 list.add("a"); System.out.println(list); } 异常堆

九七的博客 1655

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

java 异常java.lang.UnsupportedOperationException

异常信息如下: Exception in thread "main" java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:151) at java.util.AbstractList.add(AbstractList.java:89) at ma...

SW_LCC的博客 1374

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

解决java.lang.UnsupportedOperationException的问题

1、问题描述 在项目中对List进行操作时报错java.lang.UnsupportedOperationException,详细如下 Exception in thread "main" java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:148) at java.util.AbstractList.add(AbstractList.java:108) at com.atgui

TanaStudy的博客 4274

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

java.lang.UnsupportedOperationException 报错解决办法

java.lang.UnsupportedOperationException 报错解决办法 Exception in thread "main" java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:148) at java.util.AbstractList.add(A...

jia_youshzh的博客 882

java.lang.UnsupportedOperationException: null的解决办法

java.lang.UnsupportedOperationException: null解决办法

XuanRan的博客 4550

java.lang.UnsupportedOperationException异常解决方案

java.lang.UnsupportedOperationException异常异常信息如何规避? 开发过程中操作list时遇到了该异常,感觉比较少遇到,在这里拿出来和大家分享下。 异常信息 Exception in thread "main" java.lang.UnsupportedOperationException at java.util.AbstractList.add(AbstractList.java:148) at java.util.AbstractList.add(Abstrac

孤寂的游魂的博客 1068

Java开发中常见的坑

一、空指针问题 1. 基本数据类型的包装类空指针问题 public class Test { public static void main(String[] args) { System.out.println(new Test().add(null)); } private Integer add(Integer a) { return a + 1; } } Exception in thread "main" java.lan

天天向上的编程技术分享博客 683

已解决java.lang.UnsupportedOperationException异常的正确解决方法,亲测有效!!!

UnsupportedOperationException是Java中的一种运行时异常,这个异常通常在调用不支持的操作时抛出,比如当尝试修改一个不可变集合时。

小明的Java问道之路 3万+

已解决:java.lang.UnsupportedOperationException 异常的正确解决方法,亲测有效!!!

在实现接口或继承抽象类时,确保所有必须的方法都已正确实现,并且不要直接调用父类或接口中的默认方法,除非你确定这些方法支持当前操作。是由于试图执行当前对象不支持的操作而引发的异常。通过理解集合的特性、使用正确的集合实现、自定义类中正确实现接口方法,并进行充分的测试,可以有效地解决和避免该异常的发生。本文提供了多种解决方案和实用建议,帮助开发者快速定位并解决问题。希望本文对您有所帮助,如有其他问题,欢迎讨论!

猿鹏探码的博客 1万+

java.lang.UnsupportedOperationException: null

java.lang.UnsupportedOperationException: null at java.util.AbstractList.add(AbstractList.java:148) ~[na:1.8.0_77] at java.util.AbstractList.add(AbstractList.java:108) ~[na:1.8.0_77] at com.gw.etcp.operationser.modular.baseinfmanage.service.impl.GroupManage

饮冰十年 难凉热血的博客 6175

Java列表抛出UnsupportedOperationException

通常,我们使用Arrays.asList或新的Java 9 List.of创建一个List 。 但是,这两种方法都返回固定大小或不可变的List ,这意味着我们无法对其进行修改,否则它将抛出UnsupportedOperationException 。 JavaListExample.java package com.mkyong; import java.util.Arrays; i...

一名可爱的技术搬运工 386

java.lang.UnsupportedOperationException at java.util.AbstractList

使用Arrays.asList()转化后调用add,remove这些method时出现java.lang.UnsupportedOperationException异常。这是由于: Arrays.asLisvt() 返回java.util.Arrays$ArrayList, 而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,remov

Intlgj的专栏 1188

UnsupportedOperationException异常解析

今天 遇到了一个bug,抛出的异常大致是下面这样的。 java.lang.UnsupportedOperationException: null at java.util.AbstractList.add(AbstractList.java:148) ~[?:1.8.0_131] at java.util.AbstractList.add(AbstractList.java:108) ~[?:1.8.0_131]

月月大王的博客 4万+
上一篇: Receiver class org.springframework.boot.context.config.ConfigFileApplicationListener does not define
下一篇: idea莫名其妙报错 java: java.lang.IllegalArgumentException
JAVA程序哥
博客等级 码龄11年 102粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JAVA程序哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值