1. forEach and Map

1.1 Normal way to loop a Map.

  1. Map<String, Integer> items = new HashMap<>();
  2. items.put("A", 10);
  3. items.put("B", 20);
  4. items.put("C", 30);
  5. items.put("D", 40);
  6. items.put("E", 50);
  7. items.put("F", 60);
  8. for (Map.Entry<String, Integer> entry : items.entrySet()) {
  9. System.out.println("Item : " + entry.getKey() + " Count : " + entry.getValue());
  10. }

1.2 In Java 8, you can loop a Map with forEach + lambda expression.

  1. Map<String, Integer> items = new HashMap<>();
  2. items.put("A", 10);
  3. items.put("B", 20);
  4. items.put("C", 30);
  5. items.put("D", 40);
  6. items.put("E", 50);
  7. items.put("F", 60);
  8. items.forEach((k,v)->System.out.println("Item : " + k + " Count : " + v));
  9. items.forEach((k,v)->{
  10. System.out.println("Item : " + k + " Count : " + v);
  11. if("E".equals(k)){
  12. System.out.println("Hello E");
  13. }
  14. });

2. forEach and List

2.1 Normal for-loop to loop a List.

  1. List<String> items = new ArrayList<>();
  2. items.add("A");
  3. items.add("B");
  4. items.add("C");
  5. items.add("D");
  6. items.add("E");
  7. for(String item : items){
  8. System.out.println(item);
  9. }

2.2 In Java 8, you can loop a List with forEach + lambda expression or method reference.

  1. List<String> items = new ArrayList<>();
  2. items.add("A");
  3. items.add("B");
  4. items.add("C");
  5. items.add("D");
  6. items.add("E");
  7. //lambda
  8. //Output : A,B,C,D,E
  9. items.forEach(item->System.out.println(item));
  10. //Output : C
  11. items.forEach(item->{
  12. if("C".equals(item)){
  13. System.out.println(item);
  14. }
  15. });
  16. //method reference
  17. //Output : A,B,C,D,E
  18. items.forEach(System.out::println);
  19. //Stream and filter
  20. //Output : B
  21. items.stream()
  22. .filter(s->s.contains("B"))
  23. .forEach(System.out::println);

 

Java 8 forEach examples遍历例子的更多相关文章

  1. Java 8 forEach简单例子

    1. forEach and Map 1.1 通常这样遍历一个Map Map<String, Integer> items = new HashMap<>(); items.p ...

  2. Java使用foreach遍历集合元素

    Java使用foreach遍历集合元素 1.实例源码 /** * @Title:ForEach.java * @Package:com.you.model * @Description:使用forea ...

  3. Java 8 forEach简单例子(转载)

    forEach and Map 1.1 通常这样遍历一个Map Map<String, Integer> items = new HashMap<>(); items.put( ...

  4. Java中forEach, 用来遍历数组

    这里的for是Java中forEach, 用来遍历数组的.for(int i : d) 就是遍历int型数组d的 每一次访问数组d的时候读取的数据放入int型的i中.和for(int i=0;i< ...

  5. IT兄弟连 Java语法教程 数组 使用foreach循环遍历数组元素

    从JDK5之后,Java提供了一种更简单的循环:foreach循环,也叫作增强for循环,这种循环遍历数组和集合更加简洁.使用foreach循环遍历数组和集合元素时,无需获得数组或集合的长度,无需根据 ...

  6. Java forEach 方式遍历集合(Java 8 新特性)

    JDK 8 新增 forEach 方式遍历集合,这种方式比原来的 for each 循环还要简洁和便利. 需要注意:如果你计算机安装的是 JDK 8 以前的版本,是不支持 JDK 8 的新特性 Lis ...

  7. Java使用foreach语句对数组成员遍历输出

    /** * 本程序使用foreach语句对数组成员进行遍历输出 * @author Lei * @version 2018-7-23 */ public class ForeachDemo { pub ...

  8. C# 和Java的foreach的不同用法

    循环语句为苦逼的程序猿们提供了很大的便利,有while.do...while.for和 foreach.而且foreach语句很简洁,但是它的优点不仅仅在于此,它的效率也是最高的. 作为两个开发语言, ...

  9. [置顶] java的foreach循环

    foreach语句是java5之后的新特征之一,在循环遍历数组.集合方面更加简洁. 使用foreach循环遍历数组和集合时,无需获得数组和集合的长度,无须根据索引来访问数组元素和集合元素,foreac ...

随机推荐

  1. 微信小程序 - (下拉)加载更多数据

    注意和后端配合就行了,前端也只能把数据拼接起来! 无论是下拉加载还是加载更多,一样的道理! 注意首次加载传递参数 注意每次加载数据数 wxml <view class='table-rank'& ...

  2. C#中添加三个线程同时启动执行某一方法,并依次调用某方法中的循环打印输。

    添加三个线程同时启动执行某一方法,并依次调用某方法中的打印输:ABC ABC ABC ABC 实现代码如下: using System; using System.Collections.Generi ...

  3. 移动端H5的一些基本知识点总结

    移动端H5的一些基本知识点总结 来到这家公司之后,和曾经的工作发生了非常大的转变.曾经我一直是做PC端页面的.来到如今这家公司之后,主要是做手机移动端的页面. 移动端的页面在我这个做习惯了PC端页面的 ...

  4. 自己定义RatingBar,能依据设置改变样式

    项目在我的GITHUB上  mirsfang的GitHub 一个简单的自己定义View  ,为了一个 比較奇葩的需求而搞出来的.他的功能就是能让你自己设置图片和图片的大小以及星星的数量,是一个组合型的 ...

  5. Android实训案例(七)——四大组件之中的一个Service初步了解,实现通话录音功能,抽调接口

    Service Service的奇妙之处.在于他不须要界面,一切的操作都在后台操作,所以非常多全局性(手机助手,语音助手)之类的应用非常长须要这个.我们今天也来玩玩 我们新建一个project--Se ...

  6. java HMAC_SHA1加密算法

      java HMAC_SHA1加密算法 CreationTime--2018年7月14日16点46分 Author:Marydon 1.准备工作 import javax.crypto.Mac; i ...

  7. soapui not supported the auto complete

    http://forum.soapui.org/viewtopic.php?t=19850 syntax highlighting or content assist inside soapUI? t ...

  8. Knockout学习之表单绑定器(下)

    “hasFocus”绑定 hasFocus绑定器会将DOM元素的焦点状态与视图模型中的属性相关联,当你设置视图模型中关联的属性为true或false后,将能够设置关键的DOM元素是否获得焦点. 比如下 ...

  9. X-Forwarded-For 会少记录一次代理服务器的IP

    X-Forwarded-For是一个Http请求头中的项目. 当一个请求经过代理时,X-Forwarded-For将被记录下来,规则如下: 假设用户U,通过代理服务器A,请求到服务器S, 那么X-Fo ...

  10. Ubuntu16.04, Gqrx通过RTL-SDR的Q通道收听中短波

    硬件准备 天线: 一根悬垂的3~4米长线天线, 如果只是临时使用, 直接用普通的0.75平方的聚氯乙烯多股软电线就可以了. 巴伦: 9:1巴伦 接收器: Q通道增加低频输入的RTL-SDR接收器 以及 ...