第五节 19可空数据类型
生活随笔
收集整理的這篇文章主要介紹了
第五节 19可空数据类型
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;/* 可空數據類型* C#中值類型(int, Guid, bool等)是不可以為空的,int i=null是錯誤的,因此int, bool等這些類型不能表示數據庫中的"Null"* 因此C#提供了"可空類型"這種語法,只要在類型后加?就構成了可空的數據庫類型,比如int?, bool?,這樣int? i = null就可以了,解決數據庫中int可以為null,而C#中int不能為null的問題* * 判斷可空類型是否為空,i==null或者i.HasValue; 得到可空變量的值,int i1 = (int)i.Value或者int i i1 = i.value;* * 類型轉換: 不可空類型賦值給可空類型無需要顯示轉換(一定成功),可空類型賦值給不可空類型則需要顯示轉換(不一定成功)* * * * * * */
namespace _19可空數據類型
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){string s1 = null;//int i1 = null;int? i2 = 0;int? i3 = 3; //int?->可空的int,解決數據庫和C#對于int是否可以為null的不同所設置的if (i3 == null){MessageBox.Show("i3為空");}else {i3++;int i4 = (int)i3; //這里對可為空的i3進行數據類型轉換MessageBox.Show("i3不為空,i3++="+i3);}//第二種判斷是否為空的值if (i3.HasValue){int i4 = i3.Value;MessageBox.Show("i3不為空,值為" + i4);}else {MessageBox.Show("i3為空");}int i6 = 10; //定義一個int數據類型int? i5 = i6; //可以給賦值給一個可空的int數據類型//但可空的int型,不能賦值給一個可空的int類,這只能做數據類型轉換,}private void button2_Click(object sender, EventArgs e){//這里直接用一個強類型的DataSet/*T_UserRow u = new T_UserRow();u.Id = 1;u.name = "xxdxxd";u.password = "xxdxxd";u.errortimes = 1;*/}}
}
總結
以上是生活随笔為你收集整理的第五节 19可空数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SMT32如何进入sleep模式
- 下一篇: Visual Studio 2010 U