Java Lambda: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 19: Line 19:
                                     .filter(map -> !"Children".equals(map.getKey()))
                                     .filter(map -> !"Children".equals(map.getKey()))
                                     .collect(Collectors.toMap(map -> map.getKey(), map -> map.getValue()));
                                     .collect(Collectors.toMap(map -> map.getKey(), map -> map.getValue()));
Integer totalInsured = filter.values().stream().mapToInt(Integer::parseInt).sum();
Integer totalInsured = filter.values().stream().mapToInt(Integer::parseInt).sum();
</source>
</source>

Revision as of 23:39, 5 September 2021

Map<String, String> insured = Stream.of("Adults:1", "Children:1", "Senior Citizen:10")
                                    .map(pair -> pair.split(":"))
                                    .collect(Collectors.toMap(pair -> pair[0], pair->pair[1]));
Double totalInsured = insured.values().stream().mapToDouble(d -> Double.parseDouble(d)).sum();
Double totalInsured = insured.values().stream().mapToDouble(Double::parseDouble).sum();
Integer totalInsured = insured.values().stream().mapToInt(d -> Integer.parseInt(d)).sum();
Integer totalInsured = insured.values().stream().mapToInt(Integer::parseInt).sum();
Map<String, String> filter  = insured.entrySet().stream()
                                     .filter(map -> !"Children".equals(map.getKey()))
                                     .collect(Collectors.toMap(map -> map.getKey(), map -> map.getValue()));

Integer totalInsured = filter.values().stream().mapToInt(Integer::parseInt).sum();

Map<String, String> mapping =  Stream.of("travel_adult:Adults", "travel_children:Children", "travel_senior_citizen:Senior Citizen")
                                     .map(pair -> pair.split(":"))
                                     .collect(Collectors.toMap(pair -> pair[0], pair->pair[1]));

Map<String, String> reverse = mapping.entrySet().stream()
                                     .collect(Collectors.toMap(map -> map.getValue(), map -> map.getKey()));

References