Комментарии 6
Я всегда за статьи для начинающих разработчиков. Некоторые концепции с трудом лезут в голову — и чем больше статей (различных изложений), тем лучше. Поэтому автору — спасибо.
Но очень смутило название — сколько можно начинать работать с лямбдами и рассказывать о «новых» фичах Java 8? Им сто лет в обед.
Но очень смутило название — сколько можно начинать работать с лямбдами и рассказывать о «новых» фичах Java 8? Им сто лет в обед.
+1
interface MyGeneric {
T compute(T t);
}
Не скомпилится.
interface MyGeneric<T>
Так лучше.
0
Что-то я не пойму:
Это вообще не скомпилируется, т.к. переменная i объявляется дважды. И даже если решить проблему с именами, метод будет всегда возвращать 120, независимо от того, что будет на входе, т.к. объявляется int n = 5;.
Будет работать, если сделать как-то так:
MyGeneric<Integer> factorial = (Integer i) -> { int result = 1; int n = 5; for(int i=1; i <= n; i++) result = i * result; return result; };
Это вообще не скомпилируется, т.к. переменная i объявляется дважды. И даже если решить проблему с именами, метод будет всегда возвращать 120, независимо от того, что будет на входе, т.к. объявляется int n = 5;.
Будет работать, если сделать как-то так:
MyGeneric<Integer> factorial = (Integer n) -> {
int result = 1;
for(int i=1; i <= n; i++)
result = i * result;
return result;
};
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как начать работать с Лямбда-выражениями в Java