List集合增删元素时,UnsupportedOperationException报错问题
我的情况是这样:从数组转集合,操作集合删除元素。
// Tab页面标题
第一步:String[] mTitles = getResources().getStringArray(R.array.leads_details_tab);
第二步:List<String> titles= Arrays.asList(mTitles);
.
.
.
第三步:titles.remove(1);-------->异常:java.lang.UnsupportedOperationException
分析报错原因:
第二步中 Arrays.asList(mTitles)生成的ArrayList与我们正常增删操作的ArrayList不是同一个。
1.正常增删操作的ArrayList是java.util下的ArrayList类,内部封装了增删的逻辑。
2.Arrays.asList(mTitles)生成的ArrayList,是java.util下的Arrays类中的内部类ArrayList。该内部类中没有封装增删的方法,所有我们看它的父类AbstractList,
AbstractList类中封装的增删方法是下面的样子:
从上面AbstractList类中封装的增删方法就能发现我们为什么会报UnsupportedOperationException异常了。
List集合增删元素时,UnsupportedOperationException报错问题的更多相关文章
- 遍历List集合删除元素的出现报错
遍历List集合删除元素的出现报错 遍历List集合删除元素的时候会发生索引越界异常或内容遍历不全等问题. 例子: List<String> al = new ArrayList< ...
- 【PostgreSQL】PostgreSQL添加新服务器连接时,报错“Server doesn't listen ”,已解决。
PostgreSQL添加新的服务器连接时,报错:
- hibernate有关联关系删除子表时可能会报错,可以用个clear避免错误
//清除子表数据 public SalesSet removeSalesSetDistributor(SalesSet salesSet ){ List<SalesSetDistributor& ...
- CentOS命令登录MySQL时,报错ERROR 1045 (28000):
CentOS命令登录MySQL时,报错ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)错误解 ...
- saltstack配置安装的一些关键步骤及安装时各种报错的分析
以下其他仅做参考,官方网址才是安装重点:http://docs.saltstack.cn/topics/installation/rhel.html 与安装相关的一些文档或资料: 一.linux服务器 ...
- vue使用v-for时vscode报错 Elements in iteration expect to have 'v-bind:key' directives
vue使用v-for时vscode报错 Elements in iteration expect to have 'v-bind:key' directives Vue 2.2.0+的版本里,当在组件 ...
- Ansible 脚本运行一次后,再次运行时出现报错情况,原因:ansible script 的格式不对,应改成Unix编码
Ansible 脚本运行一次后,再次运行时出现报错情况,原因:ansible script 的格式不对,应改成Unix编码 find . -name "*" | xargs do ...
- 使用vue时,报错“exports is not defined”
在开发中引用插件时,报错“exports is not defined” 但在引用第三方组件的时候,在浏览器中报错“exports is not defined”.根据浏览器报错信息,查询到报错来源是 ...
- 安装vue-cli时-4058报错的解决方法
一.报错信息 安装vue-cli时-4058报错 二.解决办法 1.安装淘宝镜像 npm --registry https://registry.npm.taobao.org info undersc ...
- vue项目使用echarts按需引入实现地图动态显示效果时,报错:TypeError: Cannot read property 'dataToPoint' of undefined
vue项目使用echarts按需引入实现地图动态显示效果时,报错:TypeError: Cannot read property 'dataToPoint' of undefined 借鉴了该大神的文 ...
随机推荐
- PostgreSQL 打印详细错误调用栈 - pg_backtrace
一.用法 create extension pg_backtrace; select pg_backtrace_init(); 二.示例 postgres=# select count(*)/0.0 ...
- ModuleNotFoundError: No module named 'flask._compat'
出现 "ModuleNotFoundError: No module named 'flask._compat'" 提示的解决办法: 参考 https://zhuanlan.zhi ...
- Execution failed for task ':app:checkDebugDuplicateClasses'解决办法
A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable & ...
- 加载properties文件
import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java ...
- MATLAB批量处理表格类型文件
MATLAB版本2020b 问题背景:预处理数据,有若干变压器温度表格,要将变压器运行温度数据提取出来 通过LSTM模型进行温度预测
- huawei--配置链路聚合
huawei--配置链路聚合 项目要求: LSW1和LSW2之间配置链路聚合,链路聚合分为手工和lacp两种模式.配置完后查看链路聚合状态. 项目实施: (vlan10 20 30的创建命令vlan ...
- java springboot项目树结构递归查询
记录工作 本文记录树结构递归查询,像菜单栏和部门 首先需要一张表 CREATE TABLE `sys_dict` ( `id` int NOT NULL AUTO_INCREMENT, `parent ...
- docker中安装db2
1.查看可安装的db2版本 docker search db2express-c2.下载db2镜像 docker pull ibmoms/db2express-c 3.安装镜像docker run ...
- Linux 命令 diff
比较两个文件不同 $ diff file1 file2 比较两个目录不同 $ diff --brief --recursive dir1/ dir2/ --brief 仅显示有无差异,不显示详细的信息 ...
- GridView.RowCellClick Event
Fires when a user clicks a data cell. If data is editable and the ColumnViewOptionsBehavior.EditorSh ...
