快捷搜索:
来自 计算机编程 2019-07-07 05:44 的文章
当前位置: 67677新澳门手机版 > 计算机编程 > 正文

中一些常用的方法使用

1、int?  关键字表达

一.string.Empty

(1)、int? 表示一个int类型,且该int类型可空,借使不加?的话,那么int类型的暗中认可值为0,无法赋null值,代码如下:

string.Empty就相当于 "" ,一般用来字符串的伊始化 ,

  int aa = null;

譬喻: string a; Console.WriteLine(a);//这里会报错,因为未有开始化a

图片 1

而上面不会报错: string a=string.Empty; Console.WriteLine(a);

(2)、当给叁个变量定义成int?类型的时候,那么大家在给其赋初值的时候,能够赋null,也足以赋0.

要么用于相比: if(a=="") if(a==string.Empty) 上边两句是一模二样的效用。

(3)、int??:用于决断并赋值,先判定当前变量是还是不是为null,如若是就能够赋役个新值,不然跳过,代码如下:

 

static void Main(string[] args)
{
     int? aa = 1;
     Console.WriteLine(aa ?? 0);
}

二.String.IsNullOrEmpty 方法

输出:图片 2

String.IsNullOrEmpty(value)

 

指令内定的字符串是 null 照旧 Empty 字符串。 能同时测量试验 String 是还是不是为 null 或其值是还是不是为 Empty 等价于  result = (value) == null || (value) == String.Empty;

2、?(Nullable)

参数 value :类型:System.String ,要测验的字符串。

Nullable是.NET 2.0中新提供的一种用于标志贰个值类型是或不是可感觉空的本领。

重回值 类型:System.Boolean, 假若 value 参数为 null 或空字符串 (""),则赶回 true;不然重返 false。

对于一个系列,我们不仅能够给它赋三个值,也得以给它分配叁个空援用,大家就说那些项目是可空的,由此:

 

(1)、类似string的引用类型就是可空类型

三.Nullable可空类型

(2)、像int32等的值类型就不是可空类型,因为它们不可能赋null值,因为Nullable(?)结构将扶助值类型增添成可空类型,可是不协理援用类型,应该为它们原本就是可空类型

Nullable<Int32>,读作“可空的 Int32”,能够被赋值为 -2147483648 到 2147483647 之间的大肆值,也得以被赋值为 null 值。

 

Nullable<bool> 能够被赋值为 true 或 false,或 null。在管理数据库和别的包含或者未赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型的效应特别有用。

3、可空类型具有以下特征

举个例子,数据库中的布尔型字段可以积累值 true 或 false,或许,该字段也得以未定义。 

(1)、可空类型表示可被赋值为 null 值的值类型变量。不能创造基于援用类型的可空类型。(援引类型已支持 null 值。)。

可空类型具备以下特点:  ·可空类型表示可被赋值为 null 值的值类型变量。不能成立基于援引类型的可空类型。(援引类型已帮助 null 值。)。 

(2)、语法 T? 是 System.Nullable<T> 的简写,此处的 T 为值类型。那三种样式得以沟通。

·语法 T? 是 System.Nullable<T> 的简写,此处的 T 为值类型。那三种格局得以交流。  ·

(3)、为可空类型赋值与为一般值类型赋值的形式一样,如 int? x = 10; 或 double? d = 4.108;

为可空类型赋值与为一般值类型赋值的主意同样,如 int? x = 10; 或 double? d = 4.108;。 

(4)、若是基础项指标值为 null,请使用 System.Nullable.GetValueOrDefault 属性再次回到该基础项目所赋的值或暗中同意值,比方 int j = x.GetValueOrDefault();

·借使基础项目标值为 null,请使用 System.Nullable.GetValueOrDefault 属性再次回到该基础项目所赋的值或暗中同意值,

(5)、请使用 HasValue 和 Value 只读属性测量检验是不是为空和搜索值,比方if(x.HasValue) j = x.Value;

举个例子 int j = x.GetValueOrDefault();  ·请使用 HasValue 和 Value 只读属性测量检验是不是为空和寻觅值,譬喻 if(x.HasValue) j = x.Value;   如若此变量富含值,则 HasValue 属性返回True;或然,如若此变量的值为空,则赶回 False。   假使已赋值,则 Value 属性重返该值,不然将掀起 System.InvalidOperationException。 

(6)、即使此变量包罗值,则 HasValue 属性返回True;也许,假诺此变量的值为空,则赶回 False

  可空类型变量的暗中认可值将 HasValue 设置为 false。未定义 Value。  ·使用 ?? 运算符分配默许值,当前值为空的可空类型被赋值给非空类型时将使用该默许值,

(7)、假如已赋值,则 Value 属性再次来到该值,不然将抓住 System.InvalidOperationException

如 int? x = null; int y = x ?? -1;。 

(8)、可空类型变量的暗中认可值将 HasValue 设置为 false。未定义 Value

·不允许选取嵌套的可空类型。将不编写翻译下面一行:Nullable<Nullable<int>> n; 

(9)、使用 ?? 运算符分配暗中认可值,当前值为空的可空类型被赋值给非空类型时将接纳该私下认可值,如 int? x = null; int y = x ?? -1;

程序代码

(10)、不允许选用嵌套的可空类型。将不编写翻译上边一行:Nullable<Nullable<int>> n;

class NullableExample 

 

{  

4、代码示例:

   static void Main()

图片 3

    {  

        static void Main()
        {
            int? num = null;
            //可空类型如果设置为默认值为null的话,那么系统将会把HasValue属性设置为false
            if (num.HasValue == true)
            {
                System.Console.WriteLine("num = "   num.Value);
            }
            else
            {
                System.Console.WriteLine("num = Null");
            }
            int y = num.GetValueOrDefault();
            //如果将可空类型的默认值设置为null,那么如果此时获取其Value属性,那么系统将会报(System.InvalidOperationException)错
            try
            {
                y = num.Value;
            }
            catch (System.InvalidOperationException e)
            {
                System.Console.WriteLine(e.Message);
            }
        }

     int? num = null;  

本文由67677新澳门手机版发布于计算机编程,转载请注明出处:中一些常用的方法使用

关键词: