.net问号的作用
??运算符(C# 参考)
http://msdn.microsoft.com/zh-cn/library/ms173224.aspx
可以为 null 的类型(C# 编程指南)
http://msdn.microsoft.com/zh-cn/library/1t3y8s4s.aspx
Nullable<T> 结构
http://msdn.microsoft.com/zh-cn/library/vstudio/b3h38hb0.aspx
1. 变量定义中类型后带一个问号,意思是这个数据类型是NullAble类型的。用于给变量设初值的时候,给变量(int类型)赋值为null,而不是0!
例子:
int? i = 3 等同于Nullable<int> i = new Nullable<int>(3);
int?是泛型Nullable<int>的另一种写法。
在定义方法的时候允许传null值:
public void AddUser( string name, string password, int ? role)
{
//内容略...
}
//使用
AddUser("小明" , "123456" , null ); //默认null为未审核用户
AddUser("小王" , "123456" ,1); //管理员
AddUser("小张" , "123456" ,2); //普通用户
public void AddUser(string name,string password,int? role)
{
//内容略...
}
//使用
AddUser("小明","123456",null);//默认null为未审核用户
AddUser("小王","123456",1);//管理员
AddUser("小张","123456",2);//普通用户
2. 变量定义中类型后带两个问号, 用于判断并赋值,先判断当前变量是否为null,如果是就可以赋一个新值,否则跳过!意思是取所赋值??左边的,如果左边为null,取所赋值??右边的。
例子:
page ?? 0,表示page为null的时候,取右边的值0.
??读作 空接合操作符
转载请注明出处 http://guanhp2013.cnblogs.com/
如有疑问,欢迎留言。
.net问号的作用的更多相关文章
- C# 中2个问号的作用。C#的??代表是什么意思
https://www.cnblogs.com/gggg/p/5867412.html 变量定义中含有一个问号,意思是这个数据类型是NullAble类型的.(NullAble意思是可以为空) 变量定义 ...
- Java中泛型 问号的作用
这是jdk1.5泛型的典型应用: 第一种写法,叫做使用泛型方法: public <T extends Object> void thisIsT(List <T> list ...
- C#中一个问号和两个问号(a ?? b)的作用
不卖关子,直接开门见山: C#中两个问号的作用是判断??左边的对象是否为null,如果不为null则使用??左边的对象,如果为null则使用??右边的对象. 比如:a = b ?? c,如果b为nul ...
- PHP正则表达式模式修饰符详解
PHP模式修饰符又叫模式修正符,是在正则表达式的定界符之外使用.主要用来调整正则表达式的解释,提扩展了正则表达式在匹配.替换等操作的某些功能,增强了正则的能力.但是有很多地方的解释都是错误的,也容易误 ...
- PHP文件包含漏洞剖析
一. 什么才是”远程文件包含漏洞”?回答是:服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到邪恶的目的. ...
- spring的cronExpression
CronExpression_CronExpression 规则 字段 允许值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 ...
- PHP正则表达式的逆向引用与子模式 php preg_replace应用
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit]) 功能 在 subject 中搜索 ...
- php中的修饰符
上面使用了一个修饰符U,详见关于修饰符的介绍. PHP正则表达式修饰符的理解: 在PHP正则表达式里面的修饰符可以改变正则的很多特性,使得正则表达式更加适合你的需要(注意:修饰符对于大小写是敏感的,这 ...
- 高级PHP应用程序漏洞审核技术
前言 PHP是一种被广泛使用的脚本语言,尤其适合于web开发.具有跨平台,容易学习,功能强大等特点,据统计全世界有超过34%的网站有php的应 用,包括Yahoo.sina.163.sohu等大型门户 ...
随机推荐
- @Autowired注解警告Field injection is not recommended
在使用spring框架中的依赖注入注解@Autowired时,idea报了一个警告 大部分被警告的代码都是不严谨的地方,所以我深入了解了一下. 被警告的代码如下: @Autowired UserDao ...
- 使用 Node.js 搭建 Web 服务器
使用Node.js搭建Web服务器是学习Node.js比较全面的入门教程,因为实现Web服务器需要用到几个比较重要的模块:http模块.文件系统.url解析模块.路径解析模块.以及301重定向技术等, ...
- WebDeploy to remote IIS
参考 Web Platform Installer Direct Downloads
- .net core 使用IIS作为宿主Web服务器,部署常见问题
ASP.NET Core 使用IIS作为Web服务器,部署在IIS上 所做的步骤部署完毕后,启动网站 出现 An error occurred while starting the applicati ...
- zk分布式任务管理
在我们的系统开发过程 中不可避免的会使用到定时任务的功能,而当我们在生产环境部署的服务超过1台时,就需要考虑任务调度的问题,防止两台或多台服务器上执行同一个任务,这个问题今天咱们就用zookeeper ...
- .Net Core Web Api 上传女朋友的照片到微软云Azure Storage
前言 实现一个Web Api,把女朋友照片保存到Azure云的storage里. Image Upload Api 在对应的Api Controller里,加上attribute: [Consumes ...
- 如何使用.net开发一款小而美的O2O移动应用? ——“家庭小秘”APP介绍及采访记录
“家庭小秘”是一款“互联网+生活服务”平台,为市民家庭提供优质家庭生活服务和企业后勤服务,包含了用户注册.购买预约.订单查询.充值付款.即时通讯等功能. 这款应用已上线至AppStore和安卓的应用商 ...
- linq用法整理
linq用法整理 普通查询 var highScores = from student in students where student.ExamScores[exam] > score se ...
- Redis在Windows中安装方法
首先下载Redis 下载地址:https://github.com/MSOpenTech/redis/releases Redis支持32位和64位,这个需要根据你系统平台的实际情况选择,我的是64位 ...
- 简述ADO.NET命名空间
system.data命名空间的类型 system.data命名空间的核心成员 命名空间 作用 Constraint 表示某个DataColumn对象的约束 DataColumn 表示某个DataT ...