Я предполагаю, что у вас есть что-то вроде этого:
List<String> colors = Arrays.asList("blue","red", "green", "yellow", "black");
List<Integer> numbers = Arrays.asList(1,3,0,0,2,3,1,4,0,2,4,3,3,3,2,0);
значения в списке чисел, соответствующие индексам в списке цветов.Если это так, то сделайте что-то вроде того, что @Naman уже предложил:
Map<String, Long> colorCount = numbers.stream()
.collect(Collectors.groupingBy(i -> colors.get(i), Collectors.counting()));
colorCount.forEach((k,v) -> System.out.println(k + " count: " + v));