【发布时间】:2011-01-01 18:19:28
【问题描述】:
开始用 C# 学习 LINQ。
尤其是 LINQ to Objects 和 LINQ to XML。
我真的很喜欢 LINQ 的强大功能。
我了解到有一个名为 JLINQ 的 JavaScript 实现。
此外(正如 Catbert 发布的)Scala 将拥有 LINQ
您知道 LINQ 或类似的东西是否会成为 Java 7 的一部分吗?
更新:2008 年的有趣帖子 - LINQ for Java tool
【问题讨论】:
-
我一直认为 LINQ 是“丑陋的”和错误的。它看起来很强大,你可以用它做一些大意大利面。毕竟,ORM 解决方案试图尽量减少使用类似 SQL 的语言。为什么要重新引入它们?
-
Bozho,LINQ 不仅仅是关于 ORM,它也是一个允许在 C# 中进行函数式编程的系统,尤其是在 linq2objects 和 lambda 表示法结合的情况下。对很多人来说,这是 LINQ 最有用的特性,而不是 ORM。
-
@Bozho:除了 AlecZorab 所说的 LINQ 的功能性质之外,类似 SQL 的语言的问题不在于它们本身的“SQLness”,它们的问题是它们通常被实现为基于字符串的嵌入式语言。无论如何,LINQ 的“SQLness”只是集合/关系操作的语法问题。它可以是 map、zip、filter、project 等关键字,而不是 select、where、group by 等,并且 LINQ 功能将是相同的,而不像 SQL 类语言。
-
查看这个:github.com/nicholas22/jpropel-light,真实例子:new String[] { "james", "john", "john", "eddie" }.where(startsWith ("j")).toList().distinct();
-
我还有我刚刚发布为 0.9 版的库,名为 Linq-A-Like。根据 Sobral 先生的回答,它唯一的答案是第 3 号子弹,使用 Java 的 lambda 和
Iterable的变化性质,可以达到第 1 号。您可以在此处的 Maven 中心获得它:search.maven.org/…
标签: java linq scala closures java-7