Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 2582|Svar: 1

[Kilde] .NET/C# vælger snedigt indekser i foreach

[Kopier link]
Opslået på 01/02/2024 20.26.18 | | | |
Indførelsen

For- og foreach-løkkerne er en af de mest nyttige konstruktioner i C#-udviklerværktøjskassen.
Efter min mening er det mere bekvemt at iterere over en samling end i de fleste tilfælde.
Den fungerer med alle samlingstyper, inklusive ikke-indekserbare (såsom , og kræver ikke adgang til det aktuelle element gennem indekset).
Men nogle gange er et indeks over det aktuelle element virkelig nødvendigt; Jeg stødte på dette problem for noget tid siden, da jeg brugte foreach til at gennemgå samlinger under udvikling. Dette bruger typisk et af følgende mønstre:


Det har altid irriteret mig; Kan vi ikke få både værdier og indeks?
Der findes en simpel løsning med Linq og tuples.

Løsning 1:

Skriv bare en udvidelsesmetode som denne:

Indfør venligst ovenstående kode i følgende navnerum:

Kaldemetode:

Bemærk: Bag samlingenWithIndex();

Løsning 2:

Hvis du finder udvidelsesmetoden besværlig, kan du også bruge Løsning 2

Det er gjort, det har en lille effekt på ydeevnen, du kan observere brugen on demand!!





Tidligere:Nginx deaktiverer ugyldige løsninger af TLSv1.0 og TLSv1.1
Næste:Oracle-forespørgsler returnerer felt-fulde caps-problemer
 Udlejer| Opslået på 24/02/2024 17.00.44 |
.NET 9 parsamlingerTilføjede Index-udvidelsesmetoden, du kan hente indekset direkte, henvis:Hyperlink-login er synlig.

offentlig statisk System.Collections.Generic.IEnumerable<(int Index, TSource Item)> Index<TSource> (denne System.Collections.Generic.IEnumerable<TSource> kilde);

Download VS 2022-forhåndsvisningen på:Hyperlink-login er synlig.

.NET 9.0 Forhåndsvisning Download:Hyperlink-login er synlig.

Opret en ny .NET 9-konsolapp med følgende kode:







Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com