Good advice about variable names (though surely &quot;dentist&quot; isn&#x27;t all that obscure), but the example function suffers from the boilerplate that the author rightly says is a problem. Looking at the Java Collection interface, the removeIf() description sounds like it actually modifies the Collection rather than creating a new one. Is there a way in Java to do the equivalent of the following Haskell (I&#x27;m being lazy and not writing a version for Traversable)<p><pre><code>    take n (filter (&gt; 0) xs)</code></pre>