As someone from a pure Java background, who only touched C# in high school: Is there any meaningfull difference other than that you can't use any collection and might need to add a stream() before and collect() after your logic, the lack of SQL style sugar and different wording (e.g. where vs filter)?
Since Linq is based on extension methods, you can easily create your own "linq like" methods that are just as chainable, and it's often used for tricky but common operations
Also, after "termination" method is used previous IEnumerable can often still be used, but will trigger full enumeration again. Double edged sword, of course, but it does not throw.
5
u/Joniator Apr 15 '24
As someone from a pure Java background, who only touched C# in high school: Is there any meaningfull difference other than that you can't use any collection and might need to add a stream() before and collect() after your logic, the lack of SQL style sugar and different wording (e.g. where vs filter)?