JDK5的新特性之 增强for
package cn.itcast.day19.foreach;import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.ListIterator;/** JDK5的新特性:自动拆装箱,泛型,可变参数,增强for,静态导入,枚举* * 增强for:是for循环的一种** 格式:* for(元素数据类型 变量:数组或者Collection集合){* * }**好处:简化了数组和Collection集合的遍历**弊端:* 1 增强for的目标不能为null* 解决:对增强for的目标先进行不为null的判断,然后再使用 * 2 无法在迭代过程中修改集合* 解决:没辙*/ public class ForEachDemo {public static void main(String[] args) {String[] arr1=new String[]{"林青霞","风清扬","猪八戒","沙和尚"};for(String s:arr1){System.out.println(s);}System.out.println("---------");Collection<String> arr2=new ArrayList<String>();arr2.add("林青霞");arr2.add("风清扬");arr2.add("猪八戒");arr2.add("沙和尚");for(String s:arr2){System.out.println(s);}System.out.println("---------");//增强for其实就是迭代器 //迭代器迭代集合,正在迭代的过程中,集合操作集合元素ConcurrentModificationException // for(String s:arr2){ // if("林青霞".equals(s)){ // arr2.add("孙悟空"); // } // }//列表迭代器迭代集合,迭代器修改结合List<String> arr3=(List<String>)arr2;ListIterator<String> it=arr3.listIterator();while(it.hasNext()){String s=it.next();if("林青霞".equals(s)){it.add("周杰伦 ");}}System.out.println("arr3: "+arr3);System.out.println("---------");List<String> list=null;//对增强for的目标先进行不为null的判断,然后再使用 if(list!=null){//s是从list中拿出来的,在拿之前肯定会判断list是否有元素,而这时list=null,报空指针for(String s:list){System.out.println(s);}}}}
开始做,坚持做,重复做
JDK5的新特性之 增强for相关推荐
- JDK5.0新特性系列---目录
JDK5.0新特性系列---目录 JDK5.0新特性系列---1.自动装箱和拆箱 JDK5.0新特性系列---2.新的for循环 JDK5.0新特性系列---3.枚举类型 JDK5.0新特性系列--- ...
- 01-java基础加强,eclipse工具使用,快捷键,断点调试,单元测试,jdk5新特性,增强for循环,集合map,list,可变参数,枚举,反射,泛型
一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Project) 3) ...
- Java SE 6 新特性: HTTP 增强--转
概述 Java 语言从诞生的那天起,就非常注重网络编程方面的应用.随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展.在 Java SE 6 当中,围绕着 HT ...
- JDK5.0新特性--可变参数
2019独角兽企业重金招聘Python工程师标准>>> /*** 可变参数*/ public class VariableParamater {/*** 统计2个或多个数的和*/pu ...
- SQL Server 2008新特性——SSMS增强
SQL Server 2008已经发布很多天了,今天来总结一下我们最常用的工具SSMS在SQL 2008中的一些改进: 1.在注册的服务器组中一次SQL查询可以针对多个服务器执行. 首先是要在&quo ...
- java 6 新特性_Java SE 6 新特性: HTTP 增强(转)
Java 语言从诞生的那天起,就非常注重网络编程方面的应用.随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展.在 Java SE 6 当中,围绕着 HTTP ...
- oracle10g connect by,Oracle10g新特性如何增强的CONNECTBY子句?
为了更好的查询一个树状结构的表,在Oracle的PL/SQL中提供乐一个诱人的特性--CONNECT BY子句.它大大的方便了我们查找树状表:遍历一棵树.寻找某个分支--,但还是存在一些不足.在Ora ...
- JDK 10 的新特性和增强功能
JEP 286 局部变量推断: var 传统的 Java 代码中,声明一个变量是非常繁琐的: List<String> list = new ArrayList<String> ...
- VC++ 2010 MFC新特性学习 - 增强与Windows Shell的集成
增强与Windows Shell的集成 MFC 与 Windows Shell 的集成也有所增强.通过使用Visual C++ 2010中增加的文件处理程序进行预览.创建缩略图和搜索,使我们的应用程序 ...
最新文章
- 超详干货!Linux 环境变量配置全攻略
- python语言培训班-学python培训班需要多久?深圳Python培训
- python创建float型的列表_如何在Python中进行列表的创建?
- RabbitMQ的消息确认ACK机制
- 如何改变cmd的编码格式?
- Linux系统/网络管理
- 使用Elasticsearch 构建 .NET 企业级搜索
- 大数据(big data)_如何使用Big Query&Data Studio处理和可视化Google Cloud上的财务数据...
- dd var tmp .oracle,Oracle 11gR2 RAC ohasd failed to start 解决方法
- Spring框架中级联赋值(外部属性注入)以及内部属性注入
- 数据库是.frm,.myd,myi备份如何导入mysql (转)
- IntelliJ IDEA 打包Maven 构建的 Java 项目
- 在xcode中用oc实现计算器
- autojs字符串中提取数字
- 游戏开发——Gris日志 day01
- EAN校验码的计算方法
- 依图科技:多个人工智能应用领域达到全球领先水平 | 百万人学AI评选
- 论文笔记——Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs
- python写自动答题脚本_编写Python脚本拉取优学院答案
- nlp-Embedding