Java集合类框架的最佳实践有哪些?
2024-10-12 00:39:24
1.根据应用需要正确选择要使用的集合类型对性能非常重要,比如:假如知道元素的大小是固定的,那么选用Array类型而不是ArrayList类型更为合适。
2.有些集合类型允许指定初始容量。因此,如果我们能估计出存储的元素的数目,我们可以指定初始容量来避免重新计算hash值或者扩容等。
3.为了类型安全、可读性和健壮性等原因总是要使用泛型。同时,使用泛型还可以避免运行时的ClassCastException。
4.使用JDK提供的不变类(immutable class)作为Map的键可以避免为我们自己的类实现hashCode()和equals()方法。
5.编程的时候接口优于实现
6.底层的集合实际上是空的情况下,返回为长度是0的集合或数组而不是null。
最新文章
- Linux下C语言高手成长路线(转载)
- RDIFramework.NET(.NET快速开发框架) 答客户问(2014-02-23)
- ThinkPad X220i 安装 Mac OSX
- Nodejs express中创建ejs项目 error install Couldn't read dependencies
- PL/SQL — 显式游标
- ubuntu给手机建wifi
- Prototype 模式
- HDU - 5156 Harry and Christmas tree
- 手机版和PC版识别
- lepus bug
- Javascript 判断变量类型的陷阱 与 正确的处理方式
- Node.js微服务实践(一)
- interface21 - web - DispatcherServlet(DispatcherServlet初始化流程)
- C#日期转换(转载)
- 基于OSGI.NET的MVC插件式开发
- translate和position的比较
- 4.3.6 对象的界定通过编写接口来访问带这类命名结构的表会出问题。如前所述,SQL Server的灵活性不应用作编写错误代码或创建问题对象的借口。 注意在使用Management Studio的脚本工具时,SQL Server会界定所有的对象。这不是因为这么做是必须的,也不是编写代码的最佳方式,而是因为在界定符中封装所有的对象,比编写脚本引擎来查找需要界定的对象更容易。
- 09 Go 1.9 Release Notes
- poshytip漂亮的表单提示插件
- HDU 1698 Just a Hook(线段树模板之区间替换更新,区间求和查询)
热门文章
- ServletContext详解(转)
- 第三方jar上传至公司maven仓库(私库)解决办法
- 关于lazyload的实现原理
- python 回调函数,最简单的例子
- mybatis源码解析12---ResultSetHandler解析
- 自制操作系统Antz(6)——内核初步,引入c语言
- 01:云计算三种服务模式SaaS、PaaS和IaaS
- [pytorch修改]npyio.py 实现在标签中使用两种delimiter分割文件的行
- SVN更新的时候前面的子母的意思(A C D M G U R I)
- RPM 包的构建 - 实例