Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
PodstawowaskładniajęzykaC#
3.4.
Typyzmiennych
27
Typzmiennejokreślarodzajizakreswartości,jakiemożeonaprzyjmowaćpodczas
kompilacjiipouruchomieniuaplikacji.Typzmiennejimplikujetakżeoperacje,wjakichmoże
braćudziałzmienna,orazrelacjepomiędzydwomazmiennymitegosamegotypu.
Możnabezpośrednioporównaćtylkozmiennedowolnegotypuliczbowego,np.longzint.
Natomiastbezpośrednieporównaniedwóchzmiennychtypunieliczbowegoniejestmożliwe.
Programującnaplatformie.NET,należydokładniekontrolowaćtypyzmiennych,ponie-
ważkompilatorpodtymwzględemjestbardzorygorystycznyiwyłapujewszelkieniezgodno-
ścitypów.Niejawnakonwersjatypówprzezkompilatorjestograniczonadominimum,dlatego
zawszenależysamemu,zapomocąstandardowychmetod,przeprowadzaćkonwersjetypu,np.
stringnaintiodwrotnie.
Wszystkietypytworzonenabazie:
a)
klas:typobject,typstring,tablice,kolekcje;
b)
struktur:typyliczbowe,np.int,uint,long;typznakowychar,typlogicznybool,typ
datyiczasuDateTime;
c)
typuwyliczeniowegoenum;
d)
typuinterfejsuinterface;
e)
typudelegacyjnegodelegate.
Złożonabudowawszystkichtypówzapewniaodpowiednizbiórmetodiwłaściwości,
umożliwiającychwykonaniepodstawowychoperacji,np.porównania,konwersjinatyp
string(metodaToString()).
Typyzmiennychdzieląsięrównieżna:
standardoweñdostępnewprzestrzeniachnazwzawartychwewnątrzbazowejprzestrzeni
nazwSystemw.NETFramework;
własneñutworzonenarzeczdanegorozwiązania(ang.solution)lubbiblioteki.
3.4.1.
Typliczbowy
Wtabeli1.podanotypyliczbowewrazzichrozmiarem(wbajtach)orazprzybliżonym
zakresemwartości.Typyliczbowepodzielononacałkowiteizmiennoprzecinkowe(rzeczywiste).
Typdecimalmożewystępowaćjakotypcałkowity(dokładny)lubzmiennoprzecinkowy.
Tabela1.Typyliczbowe
Skróconanazwatypu
Rozmiar
Przedziałwartości
(nazwaprzestrzeniñnazw)
wbajtach
sbyte(System.Sbyte)
byte
short(System.Int16)
ushort(System.UInt16)
(System.Byte)
Liczbycałkowite
1
1
2
2
-32767ñ+32768
-127ñ+128
0ñ+65535
0ñ+255