关于new ArrayList()和Collections.emptyList()

很明显 new ArrayList()是创建一个Collection实例,它是Collection集合下面的一个实现类(中间继承了AbstractList),它的实例有Collection的增加,删除,修改等方法,

ArrayList平常用的很多,这里就不过多说明,主要说一下Collections.emptyList()。首先看一下源码:

img

emptyList()方法返回的是Collections的一个成员属性EMPTY_LIST,再看一下EMPTY_LIST:

img

img

可以看出Collections.emptyList()方法最终调用的是Collections的一个静态内部类EmptyList的构造方法实例化一个EmptyList对象,然后再看一下EmptyList这个类:

img

可以看出它并没有Collection集合的那些增加,修改删除方法。如果用它来创建的list来进行增加修改等操作会出现异常。

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/555294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ArrayList()和Collections.emptyList()的区别emptyList()、emptySet()、emptyMap()的作用和好处以及要注意的地方

前言 Java中ArrayList或许是我们平时开发最常用的一个集合类了,其次是HashMap,基本上满足了业务开发的绝大多数场景。今天要说的就是Collections.emptyList()和new ArrayList()的区别以及注意事项。 先来一段代码 运行main方法,会有如下输出…

基于mysql搭建框架环境搭建_Maven+Spring+Spring MVC+MyBatis+MySQL,搭建SSM框架环境

项目建设完成之后的结构:数据库的表结构如下:环境建设:搭建Maven环境、Tomcat环境、需要MySql 数据库支持,使用的编程工具Eclipse (这些是前期准备);开始创建工程:1.创建一个Maven工程:选择weba…

DataIntegrityViolationException: Error attempting to get column处理方案汇总

项目背景 项目整体采用的是springbootmybatis 方式。有一次做数据查询的时候。console突然报:DataIntegrityViolationException: Error attempting to get column ‘xx’…异常。起初没在意。以为是xml中的SQL写错了,排查了没问题。百度一下这个报错&…

Mybatis原理:结果集封装详解

​ 经过sql参数解析、sql动态组装和执行sql,相对而言,结果集的封装,是mybatis数据处理的最后一环。这里只对查询结果而言,因为更新语句一般都是返回影响的行数。抛开mybatis,如果让我们组装结果,我们该如何…

python内置函数面向对象_Pyhton——面向对象进阶二:类的内置函数补充、描述符...

Pyhton——面向对象进阶二:一、类的内置函数补充1、isinstance(obj,cls)——检查obj是否是该类的对象class Hoo:def __init__(self,name,tem):self.name nameself.tem temclass foo(Hoo):passf1foo(e,20)print(isinstance(f1,Hoo))首先 f1 肯定是 foo 的对象&…

vue项目打包后部署到服务器(超详细步骤)

耽误了几天, 终于开始写第二篇博客了, 这篇会讲怎么将vue项目打包部署到服务器, 其实和上一篇的uni-app步骤一样的, 就是最后多了一步修改nginx配置, 好 , 上操作 一 ,打包项目 vscode下载链接:https://pan.baidu.com/s/1ibHt7XB6EZy37BDb1CigWw 提取码&#xff1…

postman怎么不登陆使用_最新百度云不限速,免安装、免登陆、不限速,打开网站就能使用...

上次给大家安利了一波Pandownload手机版/电脑版。那篇文章中也说了,这类应用使用不当可能会遇到账号被限速的情况,而且手机版必须登录才能进行不限速下载。总之,凡是没登录账号的小伙伴,下载过程会非常曲折。那么是否有无需登录就…

vue项目配置打包测试环境/生产环境

vue项目配置打包测试环境/生产环境: 开发环境运行命令:npm run serve 生产环境打包命令:npm run pro 测试环境打包命令:npm run build 步骤: 1.项目中添加一个配置ip的js文件,比如如下的ip-config.js&…

SpringMVC访问WEB-INF下的jsp解决方案Spring Boot集成使用jsp

SpringMVC访问WEB-INF下的jsp解决方案 一. 问题 ​将项目中用到的jsp等文件放在WEB-INF目录下。实际开发过程中,需要在框架页面通过iframe嵌入对应的具体页面,此处如果直接调用对应页面所在的url地址,则会提示404错误。 ​ WEB-INF目录下的…

SpringBoot | 详解SpringBoot配置文件及其原理

文章目录一、配置文件二、YAML语法1、基本语法2、值的写法(1)、字面量:普通的值(数字,字符串,布尔)(2)、对象、Map(属性和值)(3)、数组(List、Set)三、配置文件值注入1、…

【深入理解JVM】:Java内存模型JMM

多任务和高并发的内存交互 多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服…

You may use special comments to disable some warnings.Use // eslint-disable-next-line to ignore...

vue没写什么爆红 错误原因 ESLint] 对语法的要求过于严格导致编译的时候报上图那些错误。 要知道,这并不是代码有异常,而是代码格式有问题,这些错误并不会影响代码的执行结果。 解决方法 很简单,既然是ESLint 语法错误&#xff…

java jni 原理_JNI的实现原理

JNI接口函数和指针Java虚拟机访问本机代码通过调用JNI的功能特性。JNI的功能都可以通过一个接口指针。一个接口指针是一个指向指针的指针。这个指针指向一个一个指针数组,这个数组中的每一个成员指向一个函数入口。每个接口的功能是在一个预定义的内部数组的偏移量。…

jQuery ajax读取本地json文件_jQuery请求本地JSON文件,在谷歌浏览器运行时报跨域错误_Vscode使用Live Server

json文件 {"first":[{"name":"张三","sex":"男"},{"name":"李四","sex":"男"},{"name":"王武","sex":"男"},{"name":"李…

Vue打包并发布项目

一、 打包vue项目步骤: 1、对当前vue项目进行打包的命令如下: npm run build2、打包完成,会输出Build complete并且在vue项目中会生成一个名字为dist的打包文件。如下图: 二、 使用静态服务器工具包发布打包的vue项目 1、首先…

Grammarly:最优秀的日常英文写作辅助工具——论文英文校验

使用Grammarly也有一些心得,在此分享给大家。 1,Grammarly是什么? Grammarly是一款在线语法纠正和校对工具,支持Windows、Mac、iOS和Android等多个平台。它能够检查单词拼写、纠正标点符号、修正语法错误、调整语气以及给出风格…

SpringMVC @RequestBody和@ResponseBody原理解析

SpringMVC RequestBody和ResponseBody原理解析 前言 RequestBody作用是将http请求解析为对应的对象。例如: http请求的参数(application/json格式): {"accountId": 10,"adGroupId": "12345678",…

java 高性能缓存_高性能Java缓存----Caffeine

简单介绍Caffeine是新出现的一个高性能的Java缓存,有了它完全可以代替Guava Cache,来实现更加高效的缓存;Caffeine采用了W-TinyLFU回收策略,集合了LRU和LFU的优点,提供了一个最佳的命中率,在效率上可以秒杀…

@ResponseBody 转化成json后与实体类字段名不一致_SpringMVC字符串解析成json对象(@RequestBody注解和@ResponseBody注解)

ResponseBody 转化成json后与实体类字段名不一致 实体类A字段名由B改成C后,Controller 中返回的List中字段名仍然是C 经过ResponseBody返回到前台后又变成了B 后来发现公司项目采用的是阿里的fastjson, 是开源的Json格式化工具库 此工具库是根据实体类…

java togglebutton_ToggleButton和Switch使用大全

本文转载自:Android零基础入门第21节:ToggleButton和Switch使用大全http://www.apkbus.com/blog-205190-68463.html(出处: 安卓巴士 - 安卓开发 - Android开发 - 安卓 - 移动互联网门户),转载应备注出处,尊重原创上期学习了CheckB…