.NET Core 3.x și .NET Standard 2.1 suportă sintaxa C# 8.0, introduc multe funcționalități și adaugă sintaxă nouă a caracteristicilor: membri doar de tip readonly, metode implicite de interfață, îmbunătățiri ale potrivirii tiparelor, tipare de atribute, tipare Tuple, modele de poziție, expresii de comutare, utilizarea declarațiilor, funcțiilor locale statice, fluxurilor asincrone, indicilor și intervalelor, atribuirilor de nul-merge etc. Acest articol va explica noile puncte de cunoaștere ale C# 8.0.
Index și domeniu
Următoarele tipuri .NET suportă atât indici, cât și intervale: Array, String, Span și ReadOnlySpan. Lista suportă indexuri, dar nu și intervale
Exemplul 1: Ziua de naștere a persoanei care a obținut numărul de identificare
Exemplul 2: Obține conținutul ultimului bit al șirului
Exemplul 3: Elimină ultima parte
Comutator
expresie
Modul atribute
Modelul Tuple
Modul de localizare
Unele tipuri includ o metodă de Deconstrucție care deconstruiește proprietățile sale în variabile discrete. Dacă ai acces la metoda Deconstruct, poți folosi Position Patterns pentru a verifica proprietățile unui obiect și a folosi acele proprietăți pentru modele. Luați în considerare următoarea clasă Point care conține o metodă de Deconstrucție pentru crearea variabilelor discrete pentru X și Y:
De asemenea, luați în considerare următoarea enumerare a diferitelor poziții care reprezintă cadranul:
Următoarea metodă folosește modelul de poziție pentru a extrage valorile lui x și y. Apoi folosește clauza when pentru a determina cadranul pentru acel punct:
Atribuiri nule de fuziune
Expresii constructoare
Folosind enunțul
Declarația de utilizare este o declarație de variabilă precedată de cuvântul-cheie de utilizare. Acesta instruiește compilatorul să declare variabilele care vor fi gestionate la sfârșitul scopului închis. De exemplu, codul pentru scrierea unui fișier text este următorul:
În exemplul anterior, fișierul este procesat atunci când se ajung la parantezele corecte ale metodei. Acesta este capătul intervalului fișierului declarat. Codul precedent este echivalent cu următorul cod folosind instrucțiunea clasică usând:
În exemplul anterior, fișierul este procesat atunci când se ajung la parantezele corecte asociate cu instrucțiunea de utilizare. În ambele cazuri, compilatorul va genera un apel către Dispose(). Dacă expresia din instrucțiunea using nu este disponibilă, compilatorul va genera o eroare.
Resurse
Autentificarea cu hyperlink este vizibilă.
Autentificarea cu hyperlink este vizibilă. |