Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
PodstawowaskładniajęzykaC#
3.4.4.
Typłańcuchowy(string)
29
Typstringjesttypemobiektowym,reprezentującymjednowymiarowyzbiórznaków.
Zmiennałańcuchowa(typustring)musibyćujętawparępodwójnychcudzysłowów.Klasa
System.Stringniezawierażadnychmetodpozwalającychnazmianęwartościzmiennejtypu
string,dlategoprzydodawaniudozmiennejtypustringdowolnegołańcucha,tworzony
jestniejawnienowyobiekttypustring.NajlepiejjednakposłużyćsięmetodamiklasySys-
tem.Text.StringBuilder,dziękitemumożnabowiemdopisywaćlubusuwaćdowolne
fragmentyłańcucha.Jesttoszczególniezalecanewinstrukcjachpętlioperującychnaobiektach
typustring,gdyżpozwalauniknąćñczęstowielosetkrotnegoñtworzenianowegoobiektu.
Uwaga!Znak@oznacza,żewystępującyponimciągznaków(ujętywcudzysłowy)mabyć
dosłownieinterpretowanyprzezkompilator,np.strings=@"/n///'ASP'/b";
stringlubSystem.String
min.20bajtów
np."NET";"234";
3.4.5.
Typtablicowy(array)
Typtablicowyokreślatablice,czyliuporządkowanyzbiórelementówtegosamegotypu.
Tablicemogąbyćjedno-lubwielowymiarowe.Tablicewielowymiarowedzieląsięnaprosto-
kątne,ostałejdługościkażdegowymiaru,lubÑposzarpaneî,onieokreślonejwdefinicjidługo-
ścikażdegowymiaru.Elementytablicyindeksowane(pozycjonowane)odzera,dlatego
rozmiartablicyjestrównyliczbiewszystkichelementówminus1.KlasaSystem.Arrayjest
rzadkobezpośrednioużywana,aodwołaniesięelementudotablicytypuArray,np.Tab[3],
powodujenawetbłądkompilacji.Głównymcelemtejklasyjestdostarczeniestatycznych
metod,np.Array.Copy,Array.CopyTo,pozwalającychnaprzetwarzaniekolekcjiidowol-
nychzmiennychtablicowych.
Przykładydeklaracjitablic:
int[]tab1={2,3,6,8};//tab1[1]=3
int[]tab2=newint[4]{2,3,6,8};//tablicazawiera4elementy
System.Arraytab3=newint[]{2,3,6,8};//odwołanie
tab3[1]
ñgeneruje
//błądkompilacji
int[,]
tab4=newint[,]{{2,3},{6,8}};//
tab4[1,1]=8
ñtablica
dwuwymiarowa
char[,]tab5={{'a','A'},{'b','B'}};//
tab5[1,1]='B'
ñtablica
prostokątnadwuwymiarowa
string[]tab6={"a","A","b","B","c","CCC"};//
tab6[1]="A"
ñtablica
napisów
object[]tab7={"a",1,"b",2,"c",'x'};//
tab7[1]="1"
ñtablicaobiektów
Odczytanieelementutablicypoleganapodaniuwartościindeksu(liczonegoodzera),np.
label1.Text=tab1[1]+tab3.Length+tab4[1,1]+tab5[1,1]+
tab6[1]+tab7[1];