As shown in this introductory article Java 8 Stream on Android — Medium, there are two gems that seem to play really nicely together to provide the kind of LINQ-like experience you're asking for.
These are called retrolambda and Stream.
Added bonus, they don't need Java 8, so using them is compatible with old versions of Android.
Your C# code:
productlist
.where(product=> product.code.contains(arraywithproductcode))
.ToList();
Would turn to something like this:
productlist
.filter(product -> product.code.contains(arraywithproductcode))
.collect(Collectors.toList());
With the usual remark: "Do you really need to turn it into a list at the end? Perhaps the lazily-evaluated stream is what you actually want."
For other examples, use aNNiMON/Android-Java-8-Stream-Example: Demo app of using Java 8 features with Retrolambda and Lightweight-Stream-API
We use that here with Android Studio, but I would be surprised if it did not work with Eclipse.