..
Termins null ir interesants jēdziens pasaulē plānošanas un nav sinonīms "nulles" vai "tukšs", bet gan "kā nenoteikts". Ir runāts par nullabilità (nullability), lai atsauktos uz spēju datu tipu, pieņemt un apstrādāt vērtības Null.
Katrs programmētājs bieži izstrādes laikā to pieteikumi ir, lai būtu ko darīt ar tā saukto vērtību datu tipi (vērtība tipiem), kā int, dubultā, bool, char, un datetime. Šie datu tipi ir vienkārši, bet ir viena lieta, mazliet neērti, dažos gadījumos, ko nevar null.
Par laimi, C # un NET Framework nodrošina mūs ar ļoti noderīgs instruments:. Nullable datu tipiem. Šāda veida dati var tikt izmantoti jebkurā kodu, kur ir nepieciešams, lai būtu mainīgais, kas var būt vērtības, bet var arī būt nulles vērtību.
Ja mūsu pieteikumu kodu, mēs kaut ko uzrakstīt, piemēram,
boolTest bool = null; dataTest datetime = null;saņemsiet kļūdas kompilēšanas laikā. Tomēr bieži vien sniedz nepieciešams noteikt numuru, boolean vai datumu ir nulles vērtību un šajos gadījumos jānāk mūs atbrīvot nullable datu tipiem. Lai veiktu datu tips C # nullable visu, kas jums jādara, ir likts jautājuma zīmi (?) Beigās katram datu tipam vērtību.
Tāpēc, ja mēs pārrakstīt divus iepriekšējos mainīgos šādi mums nebūs vairāk kļūdas kompilēšanas
bool? boolTest = null; datetime? dataTest = null;
Katrs veids Nullable mainīgo pakļauj īpašuma sauc par vērtību, kas ļauj jums, lai saņemtu vai noteikt vērtību. Vēl viena noderīga īpašība šiem datu tipiem ir HasValue, kas atgriež Būla vērtību TRUE, ja attiecīgais mainīgais ir ne-nulles, viltus citādi.
Tas vienmēr iespējams pārveidot vērtību ievadīts nullable tipa
dato1 bool = true; bool? dato2 = dato1bet piesargāties, ka, lai mainītu pārveidošana ir vajadzīga, lai cast nullable tips
dato1 = (bool) dato2;
Kad jūs nodot jautājumu sekot datu tipu vērtības, piemēram, int? Vai decimāldaļu?, Būtībā kompilators pārveido to struct Nullable Nullable <int> vai <decimal>.
Lai pārbaudītu šo vienkārši pievienot savu kodu, mainīga, kā Nullable <DateTime> un nodot pārtraukumpunkts savā sarakstē.
Running kodu un ievērojot Watch logā, lai parādītu, kā datu tips System.DateTime?.
| |
Excel (Ebook)
Izveidojiet izklājlapas un aprēķinu. Tikai 25 €. |
| |
Flash MX (Advanced)
Kļūsti dizainers Web vietu no 29 €. |
| |
Paint Shop Pro (First)
Web grafikas un foto rediģēšana ar Corel PSP zināms. Sākot no 49 €. |