Pytania otagowane jako java-8

Tego znacznika należy używać w przypadku pytań specyficznych dla języka Java 8, który jest wersją 8 (numer wewnętrzny 1.8) platformy Java, wydanej 18 marca 2014 r. W większości przypadków należy również podać znacznik java.

5
Jak znaleźć całkowitą liczbę tygodni w Javie?
Pracuję nad projektem. Tam powinienem znaleźć całkowitą liczbę tygodni w roku. Próbowałem z następującym kodem, ale otrzymałem złą odpowiedź: 2020 ma 53 tygodnie, ale ten kod daje 52 tygodnie. Gdzie popełniłem błąd w tym kodzie? package com.hib.mapping; import java.time.LocalDate; import java.time.temporal.WeekFields; import java.util.Calendar; import java.util.GregorianCalendar; import org.joda.time.DateTime; public class TestWeek …

1
Dlaczego kompilator wybiera tę ogólną metodę z parametrem typu klasy, gdy jest wywoływany z niepowiązanym typem interfejsu?
Rozważ następujące dwie klasy i interfejs: public class Class1 {} public class Class2 {} public interface Interface1 {} Dlaczego drugie wywołanie mandatorywywołuje przeciążoną metodę Class2, jeśli getInterface1i Interface1nie ma związku z Class2? public class Test { public static void main(String[] args) { Class1 class1 = getClass1(); Interface1 interface1 = getInterface1(); …

1
Odwołanie do metody i informacje ogólne w Javie-8
Mam problem z odniesieniem do metody w połączeniu z typami rodzajowymi. Mamy kod, w którym musimy wywołać przeciążoną metodę, ale błąd kończy się niepowodzeniem: Nie można rozwiązać wartości m1 () Uprościłem swój problem, aby wyjaśnić, gdzie leży problem. Następujący kod kończy się niepowodzeniem: public class Test { void test() { …
11 java  generics  lambda  java-8 

2
Czyszczenie listy danych w Javie8
Do czyszczenia listy danych stworzyłem metodę, która akceptuje listę danych i listę operacji czyszczenia do wykonania. public <T> List<T> cleanData(List<T> data, List<Function<T, T>> cleanOps) { List<T>dataNew=data.stream().map((str) -> { T cleanData = str; for(Function<T,T> function:cleanOps) { cleanData=function.apply(cleanData); } return cleanData; }).collect(Collectors.toList()); return dataNew; } Problem polega na tym, że ponownie tworzymy …


6
Jak znaleźć najnowszą datę z podanej wartości mapy w Javie
Mam mapę skrótu z niższymi wartościami, w wartościach mam datę jako ciąg danych typu. Chciałbym porównać wszystkie daty dostępne na mapie i wyodrębnić tylko jedną kluczową wartość, która ma najnowszą datę. Chciałbym porównać z wartościami, a nie kluczami. Podałem kod poniżej import java.util.HashMap; import java.util.Map; public class Test { public …

4
Obsługa wyjątków za pomocą strumieni
Mam Map<String,List<String>>i chcę, aby się zmieniło, Map<String,List<Long>>ponieważ każdy Stringna liście reprezentuje Long: Map<String,List<String>> input = ...; Map<String,List<Long>> output= input.entrySet() .stream() .collect(toMap(Entry::getKey, e -> e.getValue().stream() .map(Long::valueOf) .collect(toList())) ); Moim głównym problemem jest to, że każdy z nich Stringmoże nie przedstawiać poprawnie Long: może być jakiś problem.Long::valueOfmoże zgłaszać wyjątki. W takim przypadku …

1
removeIf szczegóły implementacji
Mam małe szczegółowe pytanie dotyczące implementacji, w którym nie rozumiem ArrayList::removeIf. Nie sądzę, że mogę po prostu to po prostu przedstawić, tak jak jest, bez pewnych warunków wstępnych. Jako taki: wdrożenie jest w zasadzie masowe remove , w przeciwieństwie do ArrayList::remove. Przykład powinien znacznie ułatwić zrozumienie. Powiedzmy, że mam tę …
9 java  java-8  iterator 

3
Strumień Java: Filtruj z wieloma zakresami
Próbuję przefiltrować zasób i wykluczyć niektóre elementy na podstawie pola. Do wykluczenia mam zestaw (który zawiera identyfikator, który należy wykluczyć) i listę (zawiera wiele zakresów identyfikatorów, które należy wykluczyć). Napisałem poniższą logikę i nie jestem zadowolony z logiki drugiego filtra. Czy jest lepszy sposób, aby to zrobić w Javie 8? …

1
Przełamywanie optymalizacji JIT dzięki refleksji
Podczas majstrowania przy testach jednostkowych dla wysoce współbieżnej klasy singleton natknąłem się na następujące dziwne zachowanie (testowane na JDK 1.8.0_162): private static class SingletonClass { static final SingletonClass INSTANCE = new SingletonClass(0); final int value; static SingletonClass getInstance() { return INSTANCE; } SingletonClass(int value) { this.value = value; } } …

4
Uzyskaj pracowników przed i po określonej dacie dołączenia z listy pracowników ze strumieniem Java
Mam Listz Employees z różnymi datami łączenia. Chcę uzyskać pracowników przed określoną datą dołączenia z listy i po niej za pomocą strumieni. próbowałem śledzić kod, List<Employee> employeeListAfter = employeeList.stream() .filter(e -> e.joiningDate.isAfter(specificDate)) .collect(Collectors.toList()); List<Employee> employeeListBefore = employeeList.stream() .filter(e -> e.joiningDate.isBefore(specificDate)) .collect(Collectors.toList()); class Employee{ int id; String name; LocalDate joiningDate; } …

5
Jak utworzyć wiele wątków dla każdego elementu żądania
Próbuję przetworzyć poniższy kod przy użyciu wielowątkowości na poziomie zamówienia. List<String> orders = Arrays.asList("order1", "order2", "order3", "order4", "order1"); Bieżące wykonywanie sekwencyjne: orders.stream().forEach(order -> { rules.forEach(rule -> { finalList.add(beanMapper.getBean(rule) .applyRule(createTemplate.apply(getMetaData.apply(rule), command), order)); }); }); Próbowałem użyć: orders.parallelStream().forEach(order -> {}} // code snippet. Ale zmienia reguły. Dla każdego (zasada -> {}} kolejność. …


6
Sposób replikacji obiektów pobierających / ustawiających właściwości publiczne w POJO
Mamy POJO, które jest automatycznie generowane z ~ 60 właściwościami. Jest to generowane w avro 1.4, który nie obejmuje getterów / setterów. Biblioteka, której używamy do zapewniania prostych transformacji między obiektami, wymaga metod podobnych do getter / setter w celu poprawnego działania. Czy istnieje sposób replikacji modułów pobierających / ustawiających …

3
Zwracanie domyślnej listy, jeśli lista jest pusta przy użyciu strumieni Java 8?
Czy jest jakiś sposób, aby poniższe czynności można było wykonać jako jeden zestaw operacji strumieniowych, zamiast jawnie sprawdzać, czy zalecane Produkty są puste, a następnie zwracać domyślną listę, inaczej zwracać filtrowaną listę ? public List<Product> getRecommendedProducts() { List<Product> recommendedProducts = this.newProducts .stream() .filter(isAvailable) .collect(Collectors.toList()); if (recommendedProducts.isEmpty()) { return DEFAULT_PRODUCTS; } …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.