`

java.lang.UnsupportedOperationException

阅读更多
异常背景:
遍历集合进行元素删除操作

异常描述:
String [] strArray = new String[]{null,null,null,null};
		strArray[0] = "1";
		List<String> list = Arrays.asList(strArray);
		list.removeAll(Collections.singleton(null));
		// 运行异常


异常分析:

Arrays.asList 返回结果为List
实现过程中 return new ArrayList
但此时的 ArrayList 非 java.util.ArrayList
而是 Arrays.ArrayList 是 Arrays 内部的私有静态类
此类继承 AbstractList ,而 AbstractList 实现了 List
从而可以用List 接收 asList 的返回值

但 Arrays.ArrayList 中并没有实现 removeAll 方法,所以调用的时候抛出此异常

分析流程见:遍历集合删除元素

异常总结:
将其转化为 java.util.ArrayList 即可

		String [] strArray = new String[]{null,null,null,null};
		strArray[0] = "1";
		List<String> list = new ArrayList<String>(Arrays.asList(strArray));
		list.removeAll(Collections.singleton(null));
		// 运行正常



即:
List<String> list = Arrays.asList(strArray);
运行抛出异常  java.lang.UnsupportedOperationException
不支持此种操作,asList返回的是 Arrays.ArrayList 其未实现 removeAll 方法
调用的是 AbstractList 中的 removeAll 方法,抛出异常
分享到:
评论

相关推荐

    java.lang.UnsupportedOperationException异常(csdn)————程序.pdf

    `java.lang.UnsupportedOperationException`是Java中的一个运行时异常,它属于`RuntimeException`的子类。这个异常通常在尝试调用一个不支持的操作时抛出。在Java编程中,某些方法可能在特定对象或特定条件下不支持...

    Android 兼容性问题:java.lang.UnsupportedOperationException解决办法

    "Android 兼容性问题:java.lang.UnsupportedOperationException解决办法" Android 兼容性问题:java.lang.UnsupportedOperationException解决办法是 Android 开发中常见的一种问题。该问题会导致应用程序崩溃,...

    java.lang.UnsupportedOperationException(解决方案).md

    项目中碰到的,记录一下解决方案

    Android webveiw 出现栈错误解决办法

    然而,有时在使用WebView时,可能会遇到一些错误,比如“java.lang.UnsupportedOperationException: For security reasons, WebView is not allowed in privileged processes”。这个错误通常发生在尝试在一个具有高...

    list使用过程中遇到的坑

    xception in thread "main" java.lang.UnsupportedOperationException Arrays.asList转化基本数据类型数组的时候有个意想不到的坑 当我们在实际业务开发过程中,难免会遇到数组转List的操作,通常我们所选择的就是...

    1 ElasticSearch 安装

    ### Elasticsearch在Linux系统的安装与配置详解 #### 一、引言 Elasticsearch是一款基于Lucene的开源搜索和分析引擎,适用于全文检索、结构化数据检索等场景。它以其高性能、高扩展性和易于使用的特性而受到广泛...

    prueba-javassist:用于动态代码插入的字节码级别的类操作测试

    测试javassist 用于动态代码插入的字节码级别的类操作测试虚拟机参数-agentlib:jdwp = ... 根据您运行的 JVM,可能会出现以下错误:线程“HotSwap”中的异常 java.lang.UnsupportedOperationException:未实现架构更改

    hibernate_常见问题集锦.doc

    java.lang.UnsupportedOperationException: The user must supply a JDBC connection ``` **解决方案:** 为了解决这个问题,开发者应该在初始化Configuration对象时,指定Hibernate的配置文件路径,以便读取正确的...

    MockDialogInterface.rar_All You Need

    A mock {@link android.content.DialogInterface} class. All methods are non-functional and throw {@link java.lang.UnsupportedOperationException}. Override it to provide the operations that you need.

    环信移动客服DEMO无问题版

    &gt; com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException 解决这个问题

    Proguard v5.3.3.rar

    代码混淆的时候出现java.lang.UnsupportedOperationException: Unsupported class version number [52.0] (maximum 51.0, Java 1.7),原因是proguard.jar版本太低,需要5.0以上的版本

    cxf冲突_0001

    java.lang.UnsupportedOperationException: This class does not support SAAJ 1.1 此异常表明WebLogic服务器不支持SAAJ 1.1标准。要解决这个问题,可以采取以下步骤: 1. 打开`startWebLogic.cmd`或`start...

    ssh 学习笔记

    在遇到异常时,如java.lang.UnsupportedOperationException和java.lang.NoSuchMethodException,通常表明了代码中可能存在API使用错误、框架配置不当或者依赖版本不一致等问题。例如,记录中的异常提示用户必须提供...

    jdk1.6与jboss5.x冲突问题的解决方法

    描述中提到的问题是尝试在后台声明一个Web服务,但在前台调用时抛出了`java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage`的异常。这通常意味着在处理...

    linux 6.x 安装elasticsearch 5.x指引

    [2016-11-06T16:27:21,712][WARN][o.e.b.JNANatives] unable to install syscall filter: java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_...

    使用 Android 开发基于 Web 服务的应用

    2. 将示例中的 `throw new java.lang.UnsupportedOperationException();` 替换为实际的业务逻辑,例如: ```java public org.example.www.sayhello.SayHelloResponse sayHello(org.example....

    Java读取“桌面”、“我的文档”路径的方法

    以下是一个示例,它使用`java.lang.System`的`getProperty`方法获取用户主目录,然后添加"Documents"子目录: ```java import java.io.File; import java.util.Properties; public class Main { public static ...

    Elasticsearch-linux

    [2016-11-06T16:27:21,712][WARN][o.e.b.JNANatives]unable to install syscall filter: java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONFIG_SECCOMP and CONFIG_...

Global site tag (gtag.js) - Google Analytics