Próbuję zrobić Map<BooleanSupplier, List<String>>
jako część mojego przepływu Dostaję dostawców, a następnie próbuję użyć niezmiennego budowniczego map.Zdefiniuj rodzaj niezmiennej mapy z konstruktorem
Coś jak:
//Build up BooleanSuppliers
Map<BooleanSupplier, List<String>> bsList = ImmutableMap.builder()
.put(bs1, Collections.singletonList("bs1string"))
.put(bs2, Arrays.asList("bs4","bs6"))
....
.build();
Problem polega na tym, że IntelliJ mówi, że typy nie podlegają zamianie nawet kiedy zrobić wyraźne obsady, ponieważ ImmutableMap jest typu <Object, Object>
. Czy istnieje sposób, aby jawnie rzucić lub zainicjować niezmienny budowniczy map, aby być typu ImmutableMap<BooleanSupplier, List<String>>
?
Warto również zauważyć, że to może być lepiej wyrażone jako 'ImmutableListMultimap'. –
@LouisWasserman Czy mógłbyś wytłumaczyć dlaczego? –