I have two ArrayList as follows:
ArrayList
original: 12, 16, 17, 19, 101
12, 16, 17, 19, 101
selected: 16, 19, 107, 108, 109
16, 19, 107, 108, 109
Using Java 8+ streams:
List result = original.stream() .distinct() .filter(selected::contains) .collect(Collectors.toList());