我的情况是这样:从数组转集合,操作集合删除元素。

// 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异常了。





最新文章

  1. Java堆、栈和常量池以及相关String的详细讲解
  2. Android课程---课下练习(表格、线性和相对布局)
  3. 关于inf的问题
  4. 提高神经网络的学习方式Improving the way neural networks learn
  5. 剑指offer--面试题20
  6. 打通ssh的方法
  7. iOS关于sqlite3操作
  8. Delphi IDHTTP用法详解(六种用法)
  9. JavaScript高级程序设计:第十四章
  10. Visual Studio 2017 离线安装方式
  11. poj 1845 (逆元 + 约数和)
  12. bzoj1913[Apio2010]signaling 信号覆盖 计算几何
  13. 安卓开发_浅谈AsyncTask
  14. 自己写一个java的mvc框架吧(一)
  15. js的正则匹配 和 blur
  16. python基础(基础数据类型)
  17. datetime之 utcnow 和now的用法
  18. oracle 将当前系统时间戳插入timestamp字段
  19. flask内置函数 send_static_file(filename)
  20. springboot整合mybatis,redis,代码(二)

热门文章

  1. 基于Docker使用CTB生成地形切片并加载
  2. Postgresql模板数据库之template1 和 template0
  3. Vue 插件介绍
  4. 41.Sentinel
  5. 在grafana中使用不同的数据源及插件安装
  6. k3s|如何将k8s集群的node节点设置不可调度或删除node节点?
  7. oracle 根据逗号拆分字符串一行转多行
  8. 使用stream流对数据进行处理
  9. page-break-after:always 打印分页
  10. docker下载java镜像,执行xxx.jar文件