Effective Java~58. for-each 循环优先于传统的for 循环
传统的 for循环来遍历一个集合:
// Not the best way to iterate over a collection!
for (Iterator<Element> i = c.iterator(); i.hasNext(); ) {
Element e = i.next();... // Do something with e
}
迭代数组的传统 for 循环的实例
// Not the best way to iterate over an array!
for (int i = 0; i < a.length; i++) {... // Do something with a[i]
}
迭代器和索引变量都很混乱——你只需要元素而已。
for-each 循环 (官方称为“增强的 for 语句”) 解决了所有这些问题
// The preferred idiom for iterating over collections and arrays
for (Element e : elements) {... // Do something with e
}
Effective Java~58. for-each 循环优先于传统的for 循环相关推荐
- 第46条:for-each循环优先于传统的for循环
for-each循环通过完全隐藏迭代器或者索引变量,避免混乱和出错的可能,适用于集合和数组和任何实现Iterable接口的对象. 使用传统for循环,容易出错: enum Face { ONE, TW ...
- 《Effective Java》真的是一本值得一直去钻研的好书
文章目录 <Effective Java>读书笔记 第一章 引言 第二章 创建和销毁对象 1 考虑使用静态工厂方法替代构造方法** 2 当构造方法参数过多时使用builder(建造者) 模 ...
- Effective Java读书笔记四:通用程序设计
第45条:将局部变量的作用域最小化 在第一次使用变量时的地方声明: 几乎每个局部变量的声明都应该包含一个初始表达式: 如果在终止循环之后不需要循环变量的内容,for循环优于while循环.(for循环 ...
- 《Effective Java》--Java进阶必备
<Effective Java>是 Java 领域的经典之作,其影响力不亚于<Think in Java>.它是每个 Java 开发者的必读书籍,值得多次阅读品味,并不断实践其 ...
- 《Effective Java》读书笔记
引言 1 代码应该被重用 ,而不是被拷贝. 2 错误应该尽早被检测出来,最好是在编译时刻. 3 接口.类.数组是引用类型(对象), 基本类型不是 第二章 创建和销毁对象 1 考虑用静态工厂方法代替构造 ...
- 《Effective Java(第2版)》-Joshua Bloch等
第2章 创建和销毁对象 第1条:考虑用工厂方法替代构造器 第2条:遇到多个构造器参数时要考虑用构建器 第3条:用私有构造器或者枚举类型强化Singleton属性 第4条:通过私有构造器强化不可实例化的 ...
- Effective Java读书笔记
序列化 谨慎的实现Serializable接口 实现Serializable最大的代价,一旦这个类被发布就大大降低了改变这个类实现的灵活性,这个类中所有私有实例域都将变成导出API的一部分,不符合最低 ...
- 第 3 次读 Effective Java,这 58 个技巧最值!
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:Dong GuoChao <Effective ...
- Effective Java之for-each循环优先于for循环(四十六)
for循环的缺点: 对于for循环遍历,我们很容易出现这样的一些低级错误: 对于数组 for(int i = 0 ; i >100 ; i++) for(int i = 100 ; i > ...
最新文章
- Netmeeting的四个端口
- Oracle学习笔记之三,Oracle 11g数据库的启动与关闭
- android php mysql json 查询_android php mysql json
- 3.1	采购管理规划
- oracle非归档模式与归档模式的备份
- 高并发场景下的缓存 + 数据库双写不一致问题分析与解决方案设计
- PCIE万兆网卡-华硕XG-C100C
- Linux程序包管理和yum用法
- uniapp 在HBuilder X中配置微信小程序开发工具
- python短文本数据集的关联性_短文本分析----基于python的TF-IDF特征词标签自动化提取...
- AWSome Day 2019 线上云技术课堂(2)
- C++实践之华氏温度转摄氏温度
- 人都“爆”了有这么好的东西《vtdakz.com》顶硬了!
- SpringBoot生命周期
- 24点游戏开发实例(Qt含源码)
- CSS(Emmet语法、复合选择器、元素显示模式、背景)
- 摄像头各参数的意义_手机摄像头的一些主要参数表达了什么意思?
- 成都拓嘉辰丰电商:拼多多全店推广的作用
- Java项目:springboot在线心理咨询系统
- android wifi wps 流程,android中WiFi wps连接方式
热门文章
- 一种单独适配于NER的数据增强方法:DAGA
- Android官方开发文档Training系列课程中文版:创建自定义View之View的绘制
- 如何使用ListView实现一个带有网络请求,解析,分页,缓存的公共的List页面来大大的提高工作效率
- 考研心路历程2021北京交通大学计算机学院软件工程
- 12 操作系统第三章 内存管理 非连续分配管理方式 基本分页存储管理 基本分段存储管理 段页式存储管理
- 用VB.NET(Visual Basic 2010)封装EXCEL VBA为DLL_COM组件(二)
- vim 插件之commentary
- 国内2大Git代码托管网站
- Android开发中目前流行控件和知识点总结
- Hadoop伪分布式配置和搭建,hadoop单机安装,wordcount实例测试,hadoop安装java目录怎么找,问题及问题解决方法