Arrays.asList之后不要调用修改操作

简介: `Arrays.asList()`返回的列表是固定大小的,底层基于原数组,不支持add/remove操作,否则抛出UnsupportedOperationException;且修改原数组会同步影响列表元素,因二者共享同一引用。

String[] str = new String[] { "you", "wu" };
List list = Arrays.asList(str);

因为asList返回的实际是一个Arrays内部类,并没有实现集合的修改方法(add/remove/clear)// 当操作修改方法时,会报UnsupportedOperationException。
第一种情况:list.add("yangguanbao"); 运行时异常。
第二种情况:str[0] = "gujin"; 那么 list.get(0)也会随之修改。[涉及栈堆指针操作,修改数组的数据,导致同样引用该数据的list值被改变]

image.png

相关文章
|
3月前
|
安全 Java 开发工具
整合SpringSecurity
本文介绍了Spring Security与Spring Boot的整合步骤:引入依赖、启动验证及登录测试。通过日志变化和自动跳转至login页面验证集成成功,使用默认用户名user和控制台生成的动态密码登录后,可访问受保护资源。完整代码见GitHub仓库Day01分支。
|
前端开发
File和MultipartFile互相转化工具类
File和MultipartFile互相转化工具类
2562 0
|
9月前
|
人工智能 移动开发 JavaScript
AI + 低代码技术揭秘(十二):开发人员工具和可扩展性
VTJ平台提供开发工具与扩展框架,支持低代码应用的开发与拓展。包含CLI、插件系统及Uni-App集成,结合Vite、TypeScript和Vue优化开发流程。
284 62
|
3月前
|
Java 测试技术 Apache
安装Jmeter
JMeter依赖JDK,需先安装并配置JDK环境变量。前往Apache JMeter官网(http://jmeter.apache.org/download_jmeter.cgi)下载最新版本,解压后即可使用,适用于性能测试与负载模拟。
|
8月前
|
前端开发 搜索推荐 开发工具
通义灵码与颜色板生成器,为前端开发提供智能配色解决方案
在前端开发中,色彩搭配对用户体验和界面美观至关重要。通义灵码提供的颜色板生成器通过自动推荐配色方案、随机生成颜色组合及支持自定义调整,帮助开发者高效完成配色任务。该工具支持一键导出为 CSS 样式表,并提供简洁的中文指令交互方式,大大提升开发效率,助力开发者打造美观和谐的用户界面。
|
7月前
|
人工智能 IDE 开发工具
通义灵码 AI IDE使用体验(3)项目优化及bug修复
本文介绍了使用通义灵码 AI IDE进行项目重构与优化的全过程,涵盖页面调整、UI更新、功能修复等内容,并展示了多次优化后的成果与仍存在的问题。
568 0
|
8月前
|
前端开发 开发工具 开发者
用 通义灵码 为网站生成动感粒子背景,打造星空效果
星空粒子背景因其动态性与交互性,成为网站设计中提升用户体验的重要元素。通过通义灵码,开发者可以轻松生成多种风格的星空粒子背景,并将其融入网页设计。本文介绍了使用通义灵码创建动态粒子背景的步骤,展示了
|
3月前
|
数据库
数据库设计三范式
本文介绍数据库三范式:第一范式要求字段原子性,不可再分;第二范式要求消除部分依赖,表应描述单一主题;第三范式要求消除传递依赖。范式旨在减少冗余、提升数据一致性,但实际设计中需结合业务需求灵活应用,不必严格遵循。
|
3月前
|
开发工具 git
git解决冲突合并
git解决冲突合并

热门文章

最新文章