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

Atitit 实现java的linq 以及与stream api的比较

时间:2016-10-31 07:26:11      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:1.2   mil   ota   mon   desc   static   利用   sum   汉字   

 

 

 

Atitit 实现javalinq 以及与stream api的比较

 

 

1.1. Linq stream api的关系,以及主要优缺点1

1.2. Linq stream api的适用场景1

1.3. Java中的linq1

 

 

Linq来源于sql,而我们知道在数据查询领域,sql是标准化的一个dsl。。

1.1. Linq stream api的关系,以及主要优缺点

Stream更加的通用化,linq比较专一化,专注于数据查询的dsl。。Linq就是特殊化的stream。。

 

此外,linq更加的dsl ,更加方便简洁。。

stream相对底层一些,更加灵活,但是稍微啰嗦些。。

 

1.2. Linq stream api的适用场景

大部分场合linq更加好用,毕竟sql是标准化的数据查询dsl api。。

不过少部分场合,简单查询一个list的情况下,可能linq显得有点啰嗦,stream会更加简洁些。。

 

此外,在非数据查询领域,使用stream会更加好些。。

1.3. Java中的linq

Java jdk默认没有实现linq api。只能第三方类库实现了。

虽然java有个linq4j类库,但是貌似编译不过,不好使用,只好自己实现linq api即可。。

Java实现linq,主要利用static import

 

比如实现对一个listgroup聚合查询。。比如根据月份统计充值总金额

 

List result = Select(month,sum(rechg) as total).from(list).groupby(month).orderby(total,desc);

 

 

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

汉字名:艾提拉(艾龙)   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

Atiend

 

 

Atitit 实现java的linq 以及与stream api的比较

标签:1.2   mil   ota   mon   desc   static   利用   sum   汉字   

原文地址:http://www.cnblogs.com/attilax/p/6014620.html

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