java增强for循环的实现方法
如下所示:
package cn.jdk.foreach; import java.util.HashMap; import java.util.Map; public class ForEachTest { public static void main(String[] args) { int[] arr = {1,2,3}; for(int a:arr){ System.out.println(a+"\t"); } System.out.println("=============================="); Map<String,String> map = new HashMap<String,String>(); map.put("1", "one"); map.put("2", "two"); map.put("3", "three"); map.put("4", "four"); map.put("5", "five"); //map.keySet():循环遍历map的所有键,map.keySet()返回的是Set类型,而Set是可以被增强for遍历的。 for(String key:map.keySet()){ String value = map.get(key);//通过键获取对应的值 System.out.println(key+"="+value); } } }
<p> 增强for的优缺点</p><p>l 只能从头到尾的遍历数组或集合,而不能只遍历部分;</p><p>l 在遍历List或数组时,不能获取当前元素下标;</p><p>l 增强for使用便简单,这是它唯一的优点了;</p><p>l 增强for比使用迭代器方便一点!</p>
Map并没有实现Iterable接口,所以你不能直接使用增强for来遍历它!
以上就是小编为大家带来的java增强for循环的实现方法的全部内容了,希望对大家有所帮助,多多支持我们~
相关推荐
-
详解Java中的增强 for 循环 foreach
foreach 是 Java 中的一种语法糖,几乎每一种语言都有一些这样的语法糖来方便程序员进行开发,编译期间以特定的字节码或特定的方式来对这些语法进行处理.能够提高性能,并减少代码出错的几率.在 Java 中还有比如 泛型.自动拆箱.自动装箱.内部类.枚举等等. foreach 是用来对数组或者集合进行遍历的语法.具体语法如下: for(元素类型 ele : 数组名/Iterable 实例){ } 下面我们用 foreach 来对数组和一个集合进行遍历: int [] array = {1,2
-
详解Java中list,set,map的遍历与增强for循环
详解Java中list,set,map的遍历与增强for循环 Java集合类可分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合. 关于增强for循环,需要注意的是,使用增强for循环无法访问数组下标值,对于集合的遍历其内部采用的也是Iterator的相关方法.如果只做简单遍历读取,增强for循环确实减轻不少的代码量. 集合概念: 1.作用:用于存放对象 2.相当于一个容器,里面包含着一组对象,其中的每个对象作为集合的一个元素出现 3.jav
-
Java中增强for循环在一维数组和二维数组中的使用方法
一维数组: int[] a={1,2,3}; for(int i:a) { System.out.print(i+" "); } 输出:1 2 3 二维数组: import java.util.Scanner; public class tet { public static void main(String[] args) { //int[][] b={{1,2,3},{4,5,6}};行 int[][] a=new int[5][];//必须明确行数 for(int i=0;i&l
-
java增强for循环的实现方法
如下所示: package cn.jdk.foreach; import java.util.HashMap; import java.util.Map; public class ForEachTest { public static void main(String[] args) { int[] arr = {1,2,3}; for(int a:arr){ System.out.println(a+"\t"); } System.out.println("=======
-
关于Java中增强for循环使用的注意事项
序言 for循环语句是java循环语句中最常用的循环语句,一般用在循环次数已知的情况下使用.for循环语句的语法格式如下: java语言 for语句的用法 for(初始化表达式;循环条件;操作表达式){ 执行语句 -- } 开发过程中,使用for循环遍历集合或数组是司空见惯的一件事,大家也习惯这样操作,但是有时候为了简便,我们可能会使用增强for循环,也就是类似for(String s : strList )写法,但是有时候稍有不慎,可能会带来一些莫名奇妙
-
Java流程控制之循环结构for,增强for循环
目录 1.for循环 1.1-for循环语法格式及说明 1.2-for循环实例练习演示 2.增强for循环 2.1-增强for循环语法格式及说明 2.2-增强for循环实例演示 1.for循环 虽然所有循环结构都可以用 while 或者 do-while来表示,但 for 循环的出现,可使一些循环结构变得更加简单明了. 注意: for循环执行的次数是在执行前就确定的. 实例助解:while循环和for循环 public static void main(String[] args) { int
-
详谈Java枚举、静态导入、自动拆装箱、增强for循环、可变参数
一.枚举简介 1.什么是枚举? 需要在一定范围内取值,这个值只能是这个范围内中的任意一个 现实场景:交通信号灯,有三种颜色,但是每次只能亮三种颜色里面的任意一个 2.使用一个关键字 enum enum Color3 { RED,GREEN,YELLOW; } *枚举的构造方法也是私有化的 *特殊枚举的操作 **在枚举类里面有构造方法 **在构造方法里面有参数,需要在每个实例上都写参数 **在枚举类里面有抽象方法 **在枚举的每个实例里面都重写这个抽象方法 3.枚举的api的操作 **name()
-
Java中增强for循环的实现原理和坑详解
前言 引入增强for循环的原因:在JDK5以前的版本中,遍历数组或集合中的元素,需要先获得数组的长度或集合的迭代器,比较麻烦. JDK5中定义了一种新的语法----增强for循环,以简化此类操作.增强for循环只能用在数组或实现Iterable接口的集合上. 语法格式: for(变量类型 变量:需迭代的数组或集合){ } 在JAVA中,遍历集合和数组一般有以下三种形式: for (int i = 0; i < list.size(); i++) { System.out.print(list.g
-
JAVA Iterator接口与增强for循环的实现
1 Iterator迭代器 1.1 Iterator接口 java.util.Iterator接口也是Java集合中的一员: Iterator主要用于迭代访问(即遍历)Collection中的元素,因此Iterator对象也被称为迭代器. public Iterator iterator(): 获取集合对应的迭代器,用来遍历集合中的元素. 迭代:Collection集合元素的通用获取方式.在取元素之前先判断集合中有没有元素.如果有,就把这个元素取出来:继续判断,如果还有就再取出来:就这样一直把集
-
java集合类arraylist循环中删除特定元素的方法
在项目开发中,我们可能往往需要动态的删除ArrayList中的一些元素. 一种错误的方式: <pre name="code" class="java">for(int i = 0 , len= list.size();i<len;++i){ if(list.get(i)==XXX){ list.remove(i); } } 上面这种方式会抛出如下异常: Exception in thread "main" java.lang.I
-
基于Java数组实现循环队列的两种方法小结
用java实现循环队列的方法: 1.添加一个属性size用来记录眼下的元素个数. 目的是当head=rear的时候.通过size=0还是size=数组长度.来区分队列为空,或者队列已满. 2.数组中仅仅存储数组大小-1个元素,保证rear转一圈之后不会和head相等.也就是队列满的时候.rear+1=head,中间刚好空一个元素. 当rear=head的时候.一定是队列空了. 队列(Queue)两端同意操作的类型不一样: 能够进行删除的一端称为队头,这样的操作也叫出队dequeue: 能够进行插
随机推荐
- JS作用域闭包、预解释和this关键字综合实例解析
- 详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)
- Javascript实现滑块滑动改变值的实现代码
- js onload处理html页面加载之后的事件
- 两个命令把 Vim 打造成 Python IDE的方法
- Android开发实现的简单媒体播放器功能示例
- nginx支持.htaccess文件实现伪静态的方法分享
- jqPlot jquery的页面图表绘制工具
- window.location的重写及判断location是否被重写
- javascript中DOM复选框选择用法实例
- Linux 详解 /var/log/xferlog的各个字段解析
- python爬虫常用的模块分析
- 使用ASP启动/停止指定WEB站点
- php实现的zip文件内容比较类
- 聊聊Ajax提交form表单的看法和认识
- css层滚动条
- centos下搭建SVN服务器和MySQL
- MySQL压缩版zip安装问题的解决方法
- Springmvc中的转发重定向和拦截器的示例
- Python 如何优雅的将数字转化为时间格式的方法