Pytania otagowane jako lambda

NIE UŻYWAJ DO USŁUGI AWS (do tych pytań użyj [aws-lambda!) Lambda to anonimowe funkcje lub zamknięcia w językach programowania, takich jak Lisp, C #, C ++, Lua, Python, Ruby, JavaScript lub Java. (Również wyrażenie lambda.)

5
Powrót z lambda forEach () w java
Próbuję zmienić niektóre pętle for-each na forEach()metody lambda, aby odkryć możliwości wyrażeń lambda. Wydaje się, że możliwe jest: ArrayList<Player> playersOfTeam = new ArrayList<Player>(); for (Player player : players) { if (player.getTeam().equals(teamName)) { playersOfTeam.add(player); } } Z lambdą forEach() players.forEach(player->{if (player.getTeam().equals(teamName)) {playersOfTeam.add(player);}}); Ale następny nie działa: for (Player player : players) …


4
Jak zaimplementowano std :: function?
Według źródeł, które znalazłem, wyrażenie lambda jest zasadniczo implementowane przez kompilator, tworząc klasę z przeciążonym operatorem wywołania funkcji i zmiennymi, do których się odwołujemy jako składowymi. Sugeruje to, że rozmiar wyrażeń lambda jest różny, a przy wystarczającej liczbie zmiennych odwołań, rozmiar może być dowolnie duży . std::functionPowinien mieć stały rozmiar …
99 c++  c++11  lambda 

5
Prawidłowe użycie Optional.ifPresent ()
Próbuję zrozumieć ifPresent()metodę OptionalAPI w Javie 8. Mam prostą logikę: Optional<User> user=... user.ifPresent(doSomethingWithUser(user.get())); Ale to powoduje błąd kompilacji: ifPresent(java.util.functionError:(186, 74) java: 'void' type not allowed here) Oczywiście mogę zrobić coś takiego: if(user.isPresent()) { doSomethingWithUser(user.get()); } Ale to jest dokładnie jak zagracony nullczek. Jeśli zmienię kod na ten: user.ifPresent(new Consumer<User>() { …
99 java  lambda  java-8  optional 

1
Rozwiązywanie niejednoznacznego przeciążenia wskaźnika funkcji i std :: function dla lambda przy użyciu +
W poniższym kodzie pierwsze wywołanie foojest niejednoznaczne i dlatego nie można skompilować. Drugi, z dodanym +przed lambdą , jest wynikiem przeciążenia wskaźnika funkcji. #include <functional> void foo(std::function<void()> f) { f(); } void foo(void (*f)()) { f(); } int main () { foo( [](){} ); // ambiguous foo( +[](){} ); // …

2
Implementacja lambda i model pamięci w C ++ 11
Chciałbym uzyskać informacje o tym, jak poprawnie myśleć o domknięciach std::functionw C ++ 11 oraz o tym, jak są one implementowane i jak obsługiwana jest pamięć. Chociaż nie wierzę w przedwczesną optymalizację, mam zwyczaj uważnego rozważania wpływu moich wyborów na wydajność podczas pisania nowego kodu. Zajmuję się również sporą ilością …
97 c++  memory  lambda  c++11 

4
Jak stworzyć instancję anonimowego interfejsu w Kotlinie?
Mam bibliotekę Java innej firmy, która jest obiektem z takim interfejsem: public interface Handler<C> { void call(C context) throws Exception; } Jak mogę zwięźle zaimplementować to w Kotlin, podobnie jak anonimowa klasa Java, taka jak ta: Handler<MyContext> handler = new Handler<MyContext> { @Override public void call(MyContext context) throws Exception { …


10
Zawijanie czasu StopWatch z delegatem lub lambdą?
Piszę kod w ten sposób, robiąc szybki i brudny czas: var sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 1000; i++) { b = DoStuff(s); } sw.Stop(); Console.WriteLine(sw.ElapsedMilliseconds); Z pewnością istnieje sposób, aby wywołać ten kawałek kodu czasowego jako fantazyjne-schmancy .NET 3.0 lambda zamiast (nie daj …
96 c#  .net  delegates  lambda 

2
Co oznacza [=] w C ++?
Chcę wiedzieć, co [=]robi? Oto krótki przykład template <typename T> std::function<T (T)> makeConverter(T factor, T offset) { return [=] (T input) -> T { return (offset + input) * factor; }; } auto milesToKm = makeConverter(1.60936, 0.0); Jak kod działałby z []zamiast [=]? zakładam, że std::function<T (T)> oznacza prototyp funkcji, …
94 c++  c++11  lambda 

8
C ++ lambda z przechwytywaniami jako wskaźnikiem funkcji
Bawiłem się lambdami C ++ i ich niejawną konwersją na wskaźniki funkcji. Moim początkowym przykładem było użycie ich jako wywołania zwrotnego dla funkcji ftw. Działa to zgodnie z oczekiwaniami. #include <ftw.h> #include <iostream> using namespace std; int main() { auto callback = [](const char *fpath, const struct stat *sb, int …

5
Jak przekonwertować wszystkie ciągi w List <string> na małe litery przy użyciu LINQ?
Widziałem wczoraj fragment kodu w jednej z odpowiedzi na StackOverflow, który mnie zaintrygował. To było coś takiego: List&lt;string&gt; myList = new List&lt;string&gt; {"aBc", "HELLO", "GoodBye"}; myList.ForEach(d=&gt;d.ToLower()); Miałem nadzieję, że uda mi się go użyć do przekonwertowania wszystkich elementów w myList na małe litery. Jednak tak się nie dzieje ... po …
94 c#  linq  lambda  foreach 

3
_ (podkreślenie) jest zastrzeżonym słowem kluczowym
Właśnie zastąpiłem sw poniższym wyrażeniu lambda przez _: s -&gt; Integer.parseInt(s) Kompilator Eclipse mówi: „_” nie powinno być używane jako identyfikator, ponieważ jest to zastrzeżone słowo kluczowe od poziomu źródła od 1.8. Nie znalazłem żadnego wyjaśnienia w JLS §3.9 Struktura leksykalna / Słowa kluczowe.
94 java  lambda  java-8 

14
Czym jest ta „Lambda”, o której wszyscy mówią?
Czym jest ta „Lambda”, o której wszyscy mówią? Wydaje się, że wielu ludzi to uwielbia, ale wszystko, co mogę z tego wyciągnąć, to po prostu sposób na upchanie wielu linii kodu w jednym wyrażeniu. Czy ktoś może mnie oświecić na temat jego prawdziwej wartości?
93 lambda 


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.