NON UTILIZZARE PER IL SERVIZIO AWS (utilizzare [aws-lambda] per quelle domande!) Le lambda sono funzioni anonime o chiusure in linguaggi di programmazione come Lisp, C #, C ++, Lua, Python, Ruby, JavaScript o Java. (Inoltre, espressione lambda.)
Sto cercando di elencare elementi duplicati nell'elenco di numeri interi, ad esempio, List<Integer> numbers = Arrays.asList(new Integer[]{1,2,1,3,4,4}); utilizzando Streams di jdk 8. Qualcuno ha provato. Per rimuovere i duplicati possiamo usare l'api distinte (). Ma per quanto riguarda la ricerca degli elementi duplicati? Qualcuno mi può aiutare?
Sto solo imparando a conoscere i puntatori a funzione e, mentre leggevo il capitolo K&R sull'argomento, la prima cosa che mi ha colpito è stata: "Ehi, questa è una specie di chiusura". Sapevo che questa ipotesi era fondamentalmente sbagliata in qualche modo e dopo una ricerca online non ho trovato …
Sto leggendo delle nuove funzionalità su: http://www.javaworld.com/article/2078836/java-se/love-and-hate-for-java-8.html Ho visto l'esempio qui sotto: Utilizzo della classe anonima: button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { System.out.println("Action Detected"); } }); Con Lambda: button.addActionListener(e -> { System.out.println("Action Detected"); }); Cosa farebbe qualcuno con a MouseListenerse volesse implementare più metodi all'interno della classe anonima, …
Cosa fa il codice seguente? a = lambda _:True Da quello che ho letto e testato nel prompt interattivo, sembra essere una funzione che ritorna sempre True. Lo capisco correttamente? Spero di capire perché è _stato utilizzato anche un trattino basso ( ).
Sto cercando di capire come ottenere l'indirizzo di una funzione lambda all'interno di se stesso. Ecco un codice di esempio: []() { std::cout << "Address of this lambda function is => " << ???? }(); So che posso catturare la lambda in una variabile e stampare l'indirizzo, ma voglio farlo …
Il riferimento al metodo utilizzato ha il tipo restituito Integer. Ma un incompatibile Stringè consentito nel seguente esempio. Come risolvere la withdichiarazione del metodo per rendere sicuro il tipo di riferimento del metodo senza eseguire il cast manualmente? import java.util.function.Function; public class MinimalExample { static public class Builder<T> { final …
È possibile dichiarare una funzione lambda e chiamarla immediatamente: Func<int, int> lambda = (input) => { return 1; }; int output = lambda(0); Mi chiedo se sia possibile farlo in una riga, ad esempio qualcosa del genere int output = (input) => { return 1; }(0); che fornisce un errore …
Non capisco questo caso: public delegate int test(int i); public test Success() { Func<int, int> f = x => x; return f.Invoke; // <- code successfully compiled } public test Fail() { Func<int, int> f = x => x; return f; // <- code doesn't compile } Perché la compilazione …
Gli esempi che ho scoperto che catturare thisin un lambda lo usano esplicitamente; per esempio: capturecomplete = [this](){this->calstage1done();}; Ma sembra anche possibile usarlo implicitamente; per esempio: capturecomplete = [this](){calstage1done();}; L'ho provato in g ++ e compilato. Questo è C ++ standard? (e se sì, quale versione) o è una forma …
Di recente ho scritto del codice in cui ho riutilizzato involontariamente un nome di variabile come parametro di un'azione dichiarata all'interno di una funzione che ha già una variabile con lo stesso nome. Per esempio: var x = 1; Action<int> myAction = (x) => { Console.WriteLine(x); }; Quando ho notato …
Ho scoperto che i risultati sono diversi tra i compilatori se uso un lambda per acquisire un riferimento a una variabile globale con una parola chiave mutabile e quindi modificare il valore nella funzione lambda. #include <stdio.h> #include <functional> int n = 100; std::function<int()> f() { int &m = n; …
Ho trovato questo pezzo di codice su GitHub ma non l'ho capito bene: #define lambda(ret_type, _body) ({ ret_type _ _body _; }) Poi: int (*max)(int, int) = lambda(int, (int x, int y) { return x > y ? x : y; }); int max_value = max(1, 2); // max_value is …
Ho scoperto che lvaluele chiusure lambda possono sempre essere passate come rvalueparametri di funzione. Vedi la seguente semplice dimostrazione. #include <iostream> #include <functional> using namespace std; void foo(std::function<void()>&& t) { } int main() { // Case 1: passing a `lvalue` closure auto fn1 = []{}; foo(fn1); // works // Case …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.