Qual è il nome di questo operatore =>? [duplicare]
-
28-09-2019 - |
Domanda
Eventuali duplicati:
Qual è il => di token chiamato?
Qual è il nome di questo operatore in C #?
Soluzione
E 'indicato come il lambda operatore nel docs MSDN .
Tutte le espressioni lambda utilizzano il lambda operatore =>, che viene letto come "va a". La parte sinistra della lambda operatore specifica l'ingresso parametri (se presenti) e il lato destro detiene l'espressione o l'istruzione bloccare. L'espressione lambda x => x * x si legge "x va a X volte x." Questo espressione può essere assegnato ad un Tipo di delegare come segue:
Altri suggerimenti
È il lambda operatore .
Come nota laterale, in rubino è noto come l'operatore 'hashrocket'.
Se si sta parlando nel contesto di LINQ che è un operatore Lamdba .
Come ad esempio ...
var selectedValues = myList.Where(v=>v.Name="Matt");
È possibile utilizzare questi nei propri metodi al posto di delgates. Gli usi possibili includerebbero qualcosa di simile ...
void DoWork<T>(T input, Func<T, bool> doAction, Action<T> action)
{
if (doAction(input))
action(input);
}
... l'uso del metodo di cui sopra sarebbe simile ...
DoWork(5, i=>i>1, v=>Console.WriteLine(v));
... perché 5 è maggiore di 1 questo visualizzerebbe 5 sulla console.
FWIW, a Rubysti, questo operatore è chiamato il "hash razzo". (C'è anche un società con quel nome .)