Ilmoitus:
Taulukot ilmoitetaan käyttämällä 'tyyppi[] ArrayName;' syntaksi, jossa tyyppi tarkoittaa taulukkokokoelman jäsenten tyyppiä ja 'ArrName' on taulukolle määritetty otsikko. Taulukon ilmoitus merkitään hakasulkeilla [].
tyyppi [ ] ArrayName = uusi tyyppi [ ] ; Listat on ilmoitettu käyttämällä 'List
Lista < tyyppi > listanimi = uusi lista < tyyppi > ( ) ;
Alustus:
Taulukot käyttävät aaltosulkeet {} arvojen sulkemiseen, kun taas listat käyttävät uutta List
tyyppi [ ] ArrayName = { v1 , v2 , v3 , ... } ;
Lista < tyyppi > listanimi = uusi lista < tyyppi > { v1 , v2 , v3 , ... } ;
Arvojen lisääminen:
On tärkeää muistaa, että C#-taulukoilla on tietty koko. Jos tarvitaan eri kokoa, on luotava uusi taulukko 'newArr' halutun kokoisella (nykyinen pituus + uusien arvojen lukumäärä). Lisää alkuperäinen taulukko 'OrgArr' uuteen taulukkoon ja määritä uudet arvot uusiin paikkoihin uudessa taulukossa ja päivitä viittaus uuteen taulukkoon.
Array. Kopio ( OrgArr , uusiArr , OrgArr. Pituus ) ;
uusiArr [ OrgArr. Pituus ] = 14 ; // uusi arvo
uusiArr [ OrgArr. Pituus + 1 ] = 2 ; // uusi arvo
OrgArr = uusiArr ; // Päivitä viite int[] NewArr = new int[OrgArr.Length + 2];
Listat tarjoavat joustavuutta koon hallinnassa. Kun luettelo alustetaan, se alkaa alkuperäisellä kapasiteetilla, mutta se voi laajentua automaattisesti, kun lisää elementtejä lisätään. Tämä dynaaminen koonmuutosominaisuus mahdollistaa luetteloiden mukauttamisen muuttuviin vaatimuksiin. C#-listat sisältävät Add()-funktion arvojen lisäämiseksi luetteloon. Näin voit lisätä arvoja C#-luetteloon:
Taulukot vs listat : Käyttövertailu C:ssä #
Pääsy arvoihin
Taulukkonumeroiden arvoihin päästään indeksimerkinnällä [], eli suluissa olevalla indeksinumerolla ja ne tallennetaan toiseen muuttujaan.
tyyppinen elementti = ArrayName [ indeksi ] ;C#-luettelon arvoihin pääsemiseksi voit myös käyttää indeksimerkintää [] ja haluttua indeksipaikkaa, joka on samanlainen kuin taulukot.
tyyppinen elementti = Listanimi [ indeksi ] ;
Arvojen poistaminen
Matriiseilla on asetettu pituus. Siksi elementtien poistamiseksi on luotava uusi taulukko, jonka koko on pienempi, ja kopioitava olemassa olevat elementit. Tämä voidaan tehdä käyttämällä Array.Copy()-funktiota 'Arvojen lisääminen' -osiossa kuvatulla tavalla. C#-luetteloissa arvojen poistaminen on paljon yksinkertaisempaa ja intuitiivisempaa. List
Laske arvot
C#-taulukon arvojen laskemiseksi voit käyttää taulukon pituusmääritettä. Pituusominaisuus antaa sinulle taulukon arvojen kokonaismäärän.
int Kreivi = arrayName. Pituus ;Laskeaksesi arvot C#-luettelossa, voit käyttää luettelon 'count'-ominaisuutta. Luettelossa tällä hetkellä olevien elementtien kokonaismäärä palautetaan myös 'count'-attribuutilla.
int Kreivi = listanimi. Kreivi ;Toista arvot
Jos haluat iteroida arvojen yli C#-taulukossa, voit käyttää 'for'-silmukkaa, jonka silmukan ehtona on taulukon pituus.
varten ( int i = 0 ; i < ArrayName. Pituus ; i ++ ) {tyyppi e = arrayName [ i ] ;
Konsoli. WriteLine ( se on ) ;
}
Jos haluat iteroida C#-luettelon arvojen yli, voit käyttää foreach-silmukkaa, koska se yksinkertaistaa iterointiprosessia iteroimalla automaattisesti elementtien yli.
jokaiselle ( kirjoita e listaan Name ) {Konsoli. WriteLine ( se on ) ;
}
Esimerkki 1: C#-taulukot
Annettu koodi ilmoittaa ja alustaa kokonaislukutaulukon nimeltä 'Arr', jonka pituus on 5 ja antaa arvot sen elementeille. Taulukon elementeille määritetyt arvot ovat 11, 12, 13, 14 ja 15. Koodi jatkaa sitten taulukon elementtien näyttämistä 'for'-silmukan avulla. Jokainen komponentti näytetään erillisellä rivillä käyttämällä Console.WriteLine()-menetelmää.
Alkuperäisten elementtien näyttämisen jälkeen koodi muokkaa indeksin 2 elementtiä antamalla sille uuden arvon 10. Seuraavaksi koodi näyttää muokatun taulukon iteroimalla elementit uudelleen käyttämällä 'for'-silmukkaa. Lopuksi koodi näyttää taulukossa olevien arvojen kokonaismäärän käyttämällä 'Arr.Length' -ominaisuutta, joka antaa taulukon pituuden.
järjestelmän avulla ;luokan nukke {
staattinen mitätön Main ( ) {
int [ ] Arr = Uusi int [ 5 ] { yksitoista , 12 , 13 , 14 , viisitoista } ;
Konsoli. WriteLine ( 'Elementit:' ) ;
varten ( int i = 0 ; i < Arr. Pituus ; i ++ )
{
Konsoli. WriteLine ( Arr [ i ] ) ;
}
Arr [ 2 ] = 10 ;
Konsoli. WriteLine ( 'Muokattu taulukko:' ) ;
varten ( int i = 0 ; i < Arr. Pituus ; i ++ )
{
Konsoli. WriteLine ( Arr [ i ] ) ;
}
Konsoli. WriteLine ( 'Elementtien lukumäärä:' + Arr. Pituus ) ;
}
}
Esimerkki 2: C#-listat
Seuraava koodi osoittaa C#-luettelon käytön kokonaislukujoukon tallentamiseen ja käsittelemiseen. Ensin koodi alustaa listan nimeltä 'Arr', jossa on viisi kokonaislukua: 11, 12, 13, 14 ja 15. Tämä saavutetaan käyttämällä List
Seuraavaksi ohjelma tulostaa 'Elements:' -viestin ja jatkaa toistamiseen luettelon jokaisen elementin yli käyttämällä 'foreach' -silmukkaa. Jokaisen iteroinnin aikana nykyinen elementti tulostetaan konsoliin käyttämällä Console.WriteLine()-metodia.
Myöhemmin koodi muuttaa arvoa listan indeksissä 2 antamalla sille arvon 10 (Arr[2] = 10). Tämä rivi muuttaa luettelon kolmannen elementin arvosta 13 arvoon 10. Muokkauksen jälkeen ohjelma tulostaa uudelleen 'Modified list:' -sanoman ja iteroi päivitetyn luettelon yli ja tulostaa jokaisen elementin konsoliin. Koodi näyttää sitten arvojen lukumäärän luettelossa käyttämällä 'Arr.Count'. Tämä ominaisuus palauttaa luettelossa olevien kohteiden määrän, joka seuraavassa skenaariossa sattuu olemaan 5.
Lopuksi koodi poistaa luettelosta elementin, jonka arvo on 4, käyttämällä Arr.Remove(4) -menetelmää. Tämä menetelmä etsii määritettyä arvoa luettelosta ja poistaa sen ensimmäisen esiintymän. Lopuksi ohjelma tulostaa 'Lista poiston jälkeen:' -viestin ja toistaa luetteloa vielä kerran ja näyttää jokaisen jäljellä olevan elementin poiston jälkeen.
järjestelmän avulla ;järjestelmän avulla. Kokoelmat . Yleinen ;
luokan nukke {
staattinen mitätön Main ( ) {
Lista < int > Arr = uusi lista < int > ( ) { yksitoista , 12 , 13 , 14 , viisitoista } ;
Konsoli. WriteLine ( 'Elementit:' ) ;
jokaiselle ( int n in Arr )
{
Konsoli. WriteLine ( n ) ;
}
Arr [ 2 ] = 10 ;
Konsoli. WriteLine ( 'Muokattu luettelo:' ) ;
jokaiselle ( int n in Arr )
{
Konsoli. WriteLine ( n ) ;
}
Konsoli. WriteLine ( 'Elementtien lukumäärä:' + Arr. Kreivi ) ;
Arr. Poista ( 4 ) ;
Konsoli. WriteLine ( 'Luettelo poiston jälkeen:' ) ;
jokaiselle ( int n in Arr )
{
Konsoli. WriteLine ( n ) ;
}
}
}
Johtopäätös
Tämä opas käsitteli perussyntaksierot C#-taulukoiden ja C#-listojen välillä. Matriiseilla on kiinteä pituus ja niihin pääsee indeksillä, kun taas luettelot ovat dynaamisesti kooltaan ja tarjoavat lisämenetelmiä elementtien lisäämiseen ja poistamiseen. Sen lisäksi toimitimme C#-listaohjelmat, jotka esittelevät elementtien määrittelyn, alustuksen, pääsyn, muokkaamisen, laskemisen ja lisäämisen.