Wat zal deze code tonen? public class StreamApi { @Data @AllArgsConstructor public static class Client { private String name; private String city; } public static Map<String, Long> countBy(Stream<Client> clients, Function<Client, String> clientParameterGetter) { return clients.collect(Collectors.groupingBy(clientParameterGetter, TreeMap::new, Collectors.counting())); } public static void main(String[] args) { List<Client> clients = List.of( new Client("Иванов", "Москва"), new Client("Михайлов", "Санкт-Петербург"), new Client("Сергеев", "Санкт-Петербург"), new Client("Иванов", null), new Client("Сергеев", null) ); long count = clients.stream() .peek(client -> { if (client.getCity() == null) { client.setCity("Москва"); } }) .count(); Predicate<Client> clientPredicate = client -> client.getCity() != null; Stream<Client> validClients = clients.stream().filter(clientPredicate); System.out.println(count); System.out.println(countBy(validClients, Client::getName)); System.out.println(countBy(validClients, Client::getCity)); } }
Java
Kun je de beschikbare tussenoperaties in de Stream API opsommen?
Waar zoekt Spring Boot componenten als er geen @ComponentScan is?
Wat zijn de voordelen en nadelen van het gebruik van een gekoppelde lijst voor het opslaan van elementen?
Welke gegevens en variabelen bevinden zich meestal in de stack tijdens de uitvoering van een programma?
Kun je uitleggen hoe de klasse WeakHashMap in Java werkt en waarin deze verschilt van een gewone HashMap?
Waarom is ArrayList sneller dan LinkedList bij sequentiële iteratie?
Hoe bepaal je het eerste unieke element in een reeks getallen?
Leg uit wat het begrip transitieve afhankelijkheid betekent in de context van afhankelijkheden in softwaresystemen.
Wat is het verschil tussen het gebruik van een eenvoudige Statement en een voorbereid PreparedStatement voor het uitvoeren van SQL-query's in JDBC?
Leg uit hoe de pijplijnmethode in Stream werkt en wat de kenmerken zijn.
Wat is het nadeel van het implementeren van een Singleton via handmatige code en waarom wordt dit als slechte praktijk beschouwd?
Hoe kan het uitvoeren van bepaalde acties worden ingesteld bij het verwijderen van een bean uit de container?
Hoe is de datastructuur HashMap geïmplementeerd en hoe zorgt het voor snelle toegang tot elementen?
Heeft u ervaring met het gebruik van de try-with-resources-constructie voor automatische resourcebeheer in Java?
Vertel over de interne structuur van het geheugen in Java en hoe de garbage collectors werken.
Wat is het doel van het gebruik van annotaties in programmeren?
Hoe kies je een specifieke implementatie van de Bean-component voor injectie in een Spring-project?
Wat is de rol van onveranderlijke objecten in programmeren en welke voordelen bieden ze?
Wat vangen we in de catch als er een uitzondering optreedt in zowel de try als bij het sluiten van de resource (try-with-resources)?