C#可空类型用法分析

 更新时间:2015年05月16日 11:19:35   作者:永远爱好写程序  
这篇文章主要介绍了C#可空类型用法,实例分析了C#可空类型的功能、定义及使用方法,需要的朋友可以参考下

本文实例讲述了C#可空类型用法。分享给大家供大家参考。具体分析如下:

可空类型只能用于值类型,不能用于引用类型,引用类型本身支持null值。
如果直接把null赋值给int类型,会出现一个错误"无法将 NULL 转换成'int',因为它是一种值类型"。

赋值时应该使用 int? a = null;

可空类型与一元或二元运算符一起使用是,如果一个操作数或两个操作数都是null,其结果为null。

说白了int?a=null 这句话的意思就是让值类型a可以接收null这个值

举例1

int? a = null;
int? b = a * 5; //b = null 
int? c = a + 5; //c = null 

举例2

int? a = null;
int? b = null;
if (a > b)
{
 Console.WriteLine("a > b is true");
}
else
{
 Console.WriteLine("a > b is false");
}
if (a == b)
{
 Console.WriteLine("a == b is true");
}
else
{
 Console.WriteLine("a == b is false");
}

输出结果

a > b is false
a == b is true

举例3

int? a = null;
int b = -5;
if (a >= b)
{
 Console.WriteLine("a>=b");
}
else
{
 Console.WriteLine("a<b");
}
if (a <= b)
{
 Console.WriteLine("a<=b");
}
else
{
 Console.WriteLine("a>b");
}

输出结果(从结果可以看出不能正确识别a>b还是a<b,只要有一个值为null,a>b和a<b这两个条件都是返回false)

a<b
a>b

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • c#获取客户端IP地址(考虑代理)

    c#获取客户端IP地址(考虑代理)

    这篇文章主要介绍了c#获取客户端IP地址(考虑代理),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • C#中使用CliWrap让命令行交互举重若轻

    C#中使用CliWrap让命令行交互举重若轻

    这篇文章介绍了C#中使用CliWrap让命令行交互举重若轻,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • sort page 排序和分页的小例子

    sort page 排序和分页的小例子

    花了一上午时间,终于写了一个进行排序并且分页的类,下面将代码贴出来,望大家指正。
    2013-05-05
  • asp.net实现遍历Request的信息操作示例

    asp.net实现遍历Request的信息操作示例

    这篇文章主要介绍了asp.net实现遍历Request的信息操作,涉及asp.net针对请求信息相关操作打印操作技巧,需要的朋友可以参考下
    2020-03-03
  • C#编程中使用设计模式中的原型模式的实例讲解

    C#编程中使用设计模式中的原型模式的实例讲解

    这篇文章主要介绍了C#编程中使用设计模式中的原型模式的实例讲解,原型模式创建新对象方便快捷,而且可在运行时根据需要通过克隆来添加和去除他们,也可在程序运行是根据情况来修改类内部的数据,需要的朋友可以参考下
    2016-02-02
  • C#使用Stack类进行堆栈设计详解

    C#使用Stack类进行堆栈设计详解

    C#中的堆栈由System.Collections.Generic命名空间中的Stack类定义,那么下面就跟随小编一起学习一下C#如何Stack类进行堆栈设计吧
    2024-03-03
  • C# Sqlite数据库的搭建及使用技巧

    C# Sqlite数据库的搭建及使用技巧

    这篇文章主要介绍了C# Sqlite数据库的搭建及使用技巧,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • C#中使用UDP通信的示例

    C#中使用UDP通信的示例

    这篇文章主要介绍了C#中使用UDP通信的示例,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-11-11
  • C# 设计模式系列教程-策略模式

    C# 设计模式系列教程-策略模式

    策略模式是一种定义一系列算法的方法,从概念上来看,所有算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合。
    2016-06-06
  • C#中WPF内存回收与释放LierdaCracker的实现

    C#中WPF内存回收与释放LierdaCracker的实现

    本文主要介绍了C#中WPF内存回收与释放LierdaCracker的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07

最新评论