Например есть метод:
public static Double sum(List<? extends Number> numList) {...}
Вместо него с тем же успехом можно использовать:
public static Double sum(List<Number> numList){...}
И какой профит от <? extends Number>
?
Если есть функция
public static Double sum(List<? extends Number> numList) {
return numList.stream()
.mapToDouble(Number::doubleValue)
.reduce((left, right) -> left + right)
.getAsDouble();
}
то в нее можно передавать лист любых Number
-ов (Double
, Long
итд).
Если же параметр будет просто List<Number>
, то лист Double
-ов передать нельзя.
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Мне нужно написать стеганографическую програму, суть которой в том что в видео формата avi нужно зашифровати доковский документЯ уже перепробовала...
int []x = new int[25]; Вопрос простой