Was bedeutet "= & gt;" Syntax in C # bedeuten?
Ich kam gerade über diese syntax in einige der Fragen in diesem forum, aber Google und andere Suchmaschinen dazu neigt, zu blockieren, die nichts, aber die Buchstaben und die Zahl in die Suche, so ist es unmöglich heraus zu suchen, "=>".
Also kann mir jemand sagen, was es ist und wie es verwendet wird?
Kommentar zu dem Problem - Öffnen
mögliche Duplikate von C# - Lambda-Ausdruck, warum sollte ich das?
InformationsquelleAutor der Frage Wolf5 | 2008-11-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist der lambda-operator.
C# 3, C# 5, wurde dies nur für lambda-Ausdrücke. Diese sind im Grunde eine kürzere form der anonyme Methoden eingeführt, die in C# 2, kann aber auch umgewandelt werden in ausdrucksbaumstrukturen.
Als Beispiel:
ist äquivalent zu:
In beiden Fällen erstellen Sie einen Delegaten mit einer
Person
parameter, Rückkehr diese person den Namen (als string).In C# 6 die gleiche syntax wird verwendet für expression-bodied members, z.B.
Siehe auch:
(Und in der Tat viele ähnliche Fragen versuchen die lambda und lambda-Ausdrücke tags.)
InformationsquelleAutor der Antwort Jon Skeet
Es bedeutet, dass awesomeness. Für z.B.
repräsentiert eine Methode, die nimmt x als parameter und gibt den Nachfolger.
weist eine Ereignisprozedur einer Schaltfläche durch Aufruf einer Methode, die eine MethodInfo hält.
InformationsquelleAutor der Antwort Serhat Ozgel
hier ein einfaches Beispiel aus der msdn
Alles vor dem => sind die input-Parameter, und alles, was nach Ausdruck. Sie können mehrere input-Parameter. Lambda-Ausdrücke werden hauptsächlich verwendet, mit Linq.
InformationsquelleAutor der Antwort Steve
Es ist eine andere form der Funktion notation. Die folgenden sind in etwa gleichwertig:
Denken Sie an einen lambda-Ausdruck, der sagte: "da etwas, etwas zurückgeben". Im obigen Beispiel wird die Funktion
x => x
sagt "x gegeben, return x". (Obwohl lambda-Ausdrücke nicht unbedingt etwas zurückgeben, in dem Fall kann man Lesen als "x gegeben, etwas mit x".)InformationsquelleAutor der Antwort Dave Cousineau
Statt der anonymen Methode wie diese:
du schreib es einfach so:
Wird es dauern, die Daten-Typen basierend auf der Rückgabewert.
InformationsquelleAutor der Antwort milot
Im Grunde bedeutet es, "geht in", wie ein parameter
In der Regel verwenden Sie Sie, um pass-Funktionen in Methoden als Parameter oder in LINQ-Anweisungen
Zum Beispiel.
InformationsquelleAutor der Antwort qui
Es ist Teil der syntax eines lambda-Ausdrucks. Ein lambda-Ausdruck ist im wesentlichen die Kurzform eines Delegierten oder von einer anonymen Methode. Um zu veranschaulichen, davon ausgehen, dass ich ein array von strings passend zu den Buchstaben des Alphabets. Ich konnte wählen die Mitglieder des Arrays, die Werte größer als "E" mit den folgenden LINQ-Ausdruck:
var someLetters = alphabet.Where(l => l > "E");
Den Teil des lambda-Ausdrucks auf der linken Seite des "=>" identifiziert den Namen der Variablen für den test (die auf die einzelnen Mitglieder des alphabet) und der Teil der lambda-Ausdruck auf der rechten Seite des "=>" kennzeichnet die Verarbeitung. In diesem Fall wird die Verarbeitung erzeugt ein boolean-Wert, der die Wo-Logik verwendet, um zu bestimmen, wenn jedes Mitglied des Alphabets Durchlaufen, um das array someLetters.
InformationsquelleAutor der Antwort JonStonecash