Здравствуйте. Может ли мне кто-нибудь объяснить небольшой момент в переписки, касательно критики и предложений данного нововведедения switch-on-strings в 7 пакете Жабы, в 334 coin project 334 JSR ?
процитирую:
Now that we plan to have closures, do we still need strings-in-switch?
Won't a string-to-function map be about as fast (though maybe less
convenient)? I don't know what the use cases are for
strings-in-switch, but the feature already felt a bit low-benefit to
me, and seems even more so now with closures.
ссылка на источник
Что такое понятие closures, и почему в случае его реализации, задается вопрос, существует ли необходимость в данной опции-свичире ?
Какая между ними связь, объясните для непонимающего.
И так же на счет вопроса не будет ли string-to-function map не менее быстрым.
Может кто небольшое введение сделать для понимания данного коммента ?
Буду благодарен.
Ответ
Могу ошибаться, но мне кажется, здесь речь идет о замыканиях, т.е. лямбдах.
Пример, где switch может быть заменен лямбда-функцией.
public static String caseOnString(String str) {
switch (str) {
case "hello":
return "world";
case "bye":
return "country";
default:
return "";
}
}
public static String mapOnString(String str) {
Function
return map.apply(str);
}
Комментариев нет:
Отправить комментарий