LINQ за Java би бил прекрасен, но проблемът е в езиковата интеграция.
Java няма нищо толкова сбито като ламбда изразите и те са една от основите на LINQ. Предполагам, че могат наслоете поддръжката на израза на заявка върху нормалната Java без ламбда изрази, като накара разширението да създава анонимни вътрешни класове - но би било доста отвратително. Ще ви трябват и дървета на изрази, ако искате да направите нещо като LINQ to SQL.
Проверени изключения възможно е пречи, но трябва да видим. Еквивалентът на IQueryable би трябвало да има някакво общо проверено изключение - или евентуално може да бъде общо и за типа на елемента, и за типа на изключението...
Както и да е, всичко това е пай в небето - като се имат предвид проблемите, които Java общността има със затварянията, мисля, че би било глупаво да се очаква нещо като LINQ в самата Java по-рано от около 2012 г. Разбира се, това не означава не би било възможно на език, подобен на Java. Groovy вече има някои полезни аспекти, например.
От страна на библиотеката Hibernate вече предоставя "неинтегрирана" версия на много от функциите на LINQ to SQL. За LINQ to Objects трябва да погледнете API на Google Java Collections - това е много едно и също нещо (филтриране, проектиране и т.н.). Без ламбда е много по-трудно да се използва, разбира се - но все пак е наистина, много удобно. (Използвам кода на Google Collections през цялото време на работа и не бих искал да се върна към „ваниловите“ колекции на Java.)