码迷,mamicode.com
首页 > 编程语言 > 详细

Java学习(八)

时间:2018-02-06 11:38:12      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:new   lis   rri   iterator   tar   read   java学习   div   int   

lambda表达式:主要用于匿名内部类、迭代查找、函数的映射方面。

1.用于匿名内部类:

 1 // 匿名内部类
 2     // 方法一
 3     public void print1(int n) {
 4         new Thread(new Runnable() {
 5             @Override
 6             public void run() {
 7                 System.out.println(n + ": Hold on, Andy!");
 8             }
 9         }).start();
10         ;
11     }
12 
13     // 匿名内部类
14     // 方法二,Lambda表达式
15     public void print2(int n) {
16         new Thread(() -> System.out.println(n + ": Hold on, Andy!")).start();
17     }
1 Lambda lmd=new Lambda();
2         lmd.print1(1);
3         lmd.print1(2);
4 结果为:
5 1: Hold on, Andy!
6 2: Hold on, Andy!

 

2.用于迭代查找

 1 // 对内部数据进行迭代
 2     // 方法一,传统方法
 3     public void Iterator1() {
 4 
 5         List<String> list = Arrays.asList("Andy", "John", "Tome");
 6         for (String str : list) {
 7             System.out.println(str);
 8         }
 9     }
10 
11     // 方法二
12     // lambda表达式
13     public void Iterator2() {
14 
15         List<String> list = Arrays.asList("Andy", "John", "Tome");
16         list.forEach(t->System.out.println(t));
17     }
1         lmd.Iterator1();
2         lmd.Iterator2();
3 结果为:
4 Andy
5 John
6 Tome
7 Andy
8 John
9 Tome

 

3.用于函数映射

1 //用lambda实现map表达式
2     public void map()
3     {
4         List<Integer> list=Arrays.asList(1,2,3,4);
5         list.stream().map(x -> x + x).forEach(x -> System.out.println(x));
6     }
1 lmd.map();
2 结果为:
3 2
4 4
5 6
6 8

 

Java学习(八)

标签:new   lis   rri   iterator   tar   read   java学习   div   int   

原文地址:https://www.cnblogs.com/2Bthebest1/p/8420802.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!