Java 8 简单的应用

自1998年JDK 1.0(Java 1.0)发布以来,Java已经受到了学生、项目经理和程序员等一大批活跃用户的欢迎。这一语言极富活力,不断被用在大大小小的项目里。从Java 1.1(1997年) 一直到Java 7(2011年),Java通过增加新功能,不断得到良好的升级。Java 8则是在2014年3月发布的。
1.Java 8的核心新特性:Lambda(匿名函数)、流、默认方法
2.改进的压力:函数式比命令式更适应新的体系架构
3.Java 8对硬件也有影响:平常我们用的CPU都是多核的,你的笔记本电脑或台式机上的处理器可能有四个CPU内核,甚至更多。但是,绝大多数现有的Java程序都只使用其中一个内核,其他三个都闲着,或只是用一小部分的处理能力来运行操作系统或杀毒程序。Java 8可以透明地把输入的不相关部分拿到几个CPU内核上去分别执行你的
Stream操作流水,这是几乎免费的并行,用不着去费劲搞Thread了。

  • 如下,举个栗子…
  • 给定两个数字列表,如何返回所有的数对呢?例如,给定列表[1, 2, 3]和列表[3, 4],应
    该返回[(1, 3), (1, 4), (2, 3), (2, 4), (3, 3), (3, 4)]。为简单起见,你可以用有两个元素的数组来代表数对。只返回总和能被3整除的数对呢?例如(2, 4)和(3, 3)是可以的。
  • java8答案:
    List numbers1 = Arrays.asList(1, 2, 3);
    List numbers2 = Arrays.asList(3, 4);
    List<int[]> pairs =
    numbers1.stream()
    .flatMap(i -> numbers2.stream()
    .filter(j -> (i + j) % 3 == 0)
    .map(j -> new int[]{i, j}) )
    .collect(toList());
    其结果是[(2, 4), (3, 3)]。

对此有什么看法或疑问呢!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值