I'm looking for a concise way to filter out items in a List at a particular index. My example input looks like this:
List<Double> originalList = Arrays.asList(0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0);
List<Integer> filterIndexes = Arrays.asList(2, 4, 6, 8);
I want to filter out items at index 2, 4, 6, 8. I have a for loop that skips items that match the index but I was hoping there would be an easy way of doing it using streams. The final result would look like that:
List<Double> filteredList = Arrays.asList(0.0, 1.0, 3.0, 5.0, 7.0, 9.0, 10.0);
forloop andremove(int). Don't use streams for everything.new Double[] {…}andnew Integer[] {…}are obsolete. Just use, e.g.List<Integer> filterIndexes = Arrays.asList(2, 4, 6, 8);remove(int)and streams.