..


Rėmėjų nuorodos

Naudojant nullable duomenų tipai C #

Straipsnį parašė Vincentas Gaglio
Puslapis 1 iš 3

Terminas niekinis yra įdomi koncepcija programavimo pasaulyje ir nėra tapatinama su "nulio" arba "tuščias", bet "kaip neapibrėžta". Kalbama apie nullabilità (nullability) kreiptis į duomenų tipą galimybę priimti ir tvarkyti neapibrėžtų reikšmių.

Kiekvienas programuotojas dažnai per jų taikymo plėtra turi daryti su vadinamųjų vertės duomenų tipai (reikšmės rūšys) kaip int, dviviečiai, bool, char ir datetime. Šie duomenų tipai yra pagrindiniai, bet vienas dalykas, šiek tiek nepatogu, kai kuriais atvejais, kad negali būti tuščias.

Laimei, C # ir NET Framework suteikia mums labai naudinga priemonė. Nullable duomenų tipai. Šie duomenų tipai gali būti naudojami bet kuriuo kodu, jei yra poreikis turėti kintamasis, kuris gali turėti reikšmės tašką, tačiau taip pat gali turėti neapibrėžta reikšmė.

Jei mūsų prašymą kodu mes rašome kažką panašaus






 boolTest bool = null;







 dataTest datetime = null;



gauti klaidų kompiliavimo metu. Tačiau dažnai pristato reikia nustatyti skaičių, loginės ar datos yra neapibrėžta reikšmė ir tokiais atvejais ateina į mūsų gelbėjimo nullable duomenų tipai. Norėdami, kad duomenų tipas C # nullable viską, ką reikia padaryti, tai įdėti klaustuką (?) Po kiekvieno duomenų tipo reikšmės pabaigos.

Todėl, jei mes perrašyti du ankstesnius kintamųjų taip mes ne daugiau klaidų kompiliavimo






 bool?

 



 boolTest = null;







 datetime?

 



 dataTest = null;



Kiekvienas tipas nullable kintamasis parodo nuosavybės vadinama vertė, kuri leidžia jums gauti ar nustatyti jų vertę. Dar viena naudinga savybė šių duomenų tipai yra HasValue, kuri grąžina loginę reikšmę TRUE, jei atitinkamas kintamasis yra ne nulis, klaidinga kitaip.

Tai visada įmanoma konvertuoti reikšmės tipą į nullable tipas






 dato1 bool = true;







 bool?

 



 dato2 = dato1



bet saugokitės, kad, kad atvirkštinio konvertavimo būtina mesti nullable tipas
 



 dato1 = (bool) dato2;

 

Kai jūs įtraukėte klausimą laikytis duomenų tipo reikšmės, kaip ir int? Arba dešimtųjų?, Iš esmės kompiliatorius paverčia ją į struct nullable nullable <int> arba <decimal>.
Norėdami tai patikrinti tiesiog pridėkite mūsų kodas, kaip nullable <DateTime> kintamojo ir padėkite tašką savo korespondenciją. Veikia kodą ir stebint Žiūrėti lange rodomas kaip duomenų tipą System.DateTime?.

Tos pačios kategorijos ...
E-mokymasis
ASP (Advanced) ASP (Advanced)
Visas kursas sukurti dinaminius interneto svetainių. Nuo 39 €.
ASP ir Access (Ebook) ASP ir Access (Ebook)
Valdymas MS Access duomenų bazės su ASP. Ne tik 29 €.
Flash MX (Advanced) Flash MX (Advanced)
Tapkite svetainių nuo 29 € dizaineris.
Rėmėjų nuorodos