Articles of lambda

Qu’est-ce que l’appel / cc?

J’ai essayé plusieurs fois de saisir le concept de continuations et d’ appeler / cc . Chaque tentative était un échec. Quelqu’un peut-il s’il vous plaît m’expliquer ces concepts, idéalement avec des exemples plus réalistes que ceux sur Wikipedia ou dans d’autres publications SO. J’ai de l’expérience en programmation Web et en POO. Je comprends […]

Interview: Qu’est-ce que l’expression Lambda?

J’ai eu récemment deux entretiens téléphoniques. Dans les deux interviews, on m’a demandé comme dernière question de définir une expression Lambda. J’ai affirmé que l’expression Lambda est une méthode sans nom à la place d’un délégué. Mais ça ne suffisait pas. Je trouve très difficile d’expliquer cela précisément lors d’un entretien téléphonique. Est-ce que quelqu’un […]

Boucle foreach multi-lignes dans linq / lambda

Je cherche un moyen de changer le code suivant: foreach (Contact _contact in contacts) { _contact.ID = 0; _contact.GroupID = 0; _contact.CompanyID = 0; } Je voudrais changer cela en utilisant LINQ / lambda dans quelque chose de similaire à: contacts.ForEach(c => c.ID = 0; c.GroupID = 0; c.CompanyID = 0); Cependant, cela ne fonctionne […]

Lambda qui ne fait absolument rien

Je devais avoir une expression lambda de l’interface fonctionnelle Runnable qui ne faisait rien. J’ai eu une méthode private void doNothing(){ //Do nothing } puis utilisez this::doNothing . Mais j’ai trouvé un moyen encore plus court de le faire.

Changer une valeur dans la liste

J’ai une liste (où T est une classe personnalisée et la classe a certaines propriétés). Je voudrais savoir comment modifier une ou plusieurs valeurs en utilisant des expressions Lambda, le résultat sera donc le même que celui de la boucle foreach: REMARQUE: la liste contient plusieurs éléments à l’intérieur (plusieurs lignes) foreach (MyClass mc in […]

Comment définir une valeur de champ dans un arbre d’expression C #?

Donné: FieldInfo field = ; ParameterExpression targetExp = Expression.Parameter(typeof(T), “target”); ParameterExpression valueExp = Expression.Parameter(typeof(ssortingng), “value”); Comment comstackr une expression lambda pour définir le champ du paramètre “target” sur “value”?

Utiliser auto dans une fonction lambda

#include #include void foo( int ) { } int main() { std::vector v( { 1,2,3 } ); std::for_each( v.begin(), v.end(), []( auto it ) { foo( it+5 ); } ); } Lorsque compilé, l’exemple ci-dessus démarre la sortie d’erreur comme suit: h4.cpp: In function ‘int main()’: h4.cpp:13:47: error: parameter declared ‘auto’ h4.cpp: In lambda function: […]

Comment atsortingbuez-vous un lambda à une variable dans Java 8?

Il suffit de jouer avec les nouvelles fonctionnalités lambda et fonctionnelles de Java 8 et je ne sais pas trop comment faire. Par exemple, ce qui suit est valide: Map map = new HashMap(); map.put(“A”, 1); map.put(“B”, 2); map.put(“C”, 3); map.compute(“A”, (k, v) -> v == null ? 42 : v + 41)); mais ce […]

Java 8 stream stream de données imprévisible sans raison évidente

J’utilise les stream Java 8 pour parcourir une liste de sous-listes. La taille de la liste externe varie entre 100 et 1000 (tests différents) et la taille de la liste interne est toujours 5. Il existe 2 tests de performances qui montrent des écarts de performance inattendus. package benchmark; import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.infra.Blackhole; import java.io.IOException; […]

Quelle est la différence entre une référence lambda et une méthode au niveau de l’exécution?

J’ai rencontré un problème en utilisant une référence de méthode, mais pas avec lambdas. Ce code était le suivant: (Comparator & Serializable) SOME_COMPARATOR::compare ou, avec lambda, (Comparator & Serializable) (a,b) -> SOME_COMPARATOR.compare(a,b) Sémantiquement, c’est ssortingctement la même chose, mais en pratique, c’est différent car dans le premier cas, je reçois une exception dans l’une des […]