这么短的一段里面竟然有两处语法不懂...MSDN也没搜到...

崔鹏飞 2008-09-09 11:24:21
 class NullableEx
{
public static void Main()//Main_9_3_5
{
Nullable<int>[] arrs = new Nullable<int>[5];
//int?[] arrs = new int?[5];
arrs[4] = 100;
arrs[2] = 200;
arrs[3] = 300;

foreach (int? j in arrs)
{
if (j == null)
Console.WriteLine("No value");
else
Console.WriteLine(j);
}
Console.Read();
}
}

这个:反省后面跟一个[]什么意思?Nullable<int>[] arrs = new Nullable<int>[5];
另外:foreach (int? j in arrs)里面的?怎么解释?
...全文
343 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
a139946487090xy 2011-03-13
  • 打赏
  • 举报
回复
刚开始看上面的代码不懂,不过看到最后。终于理解了!哈哈!
huting0211 2010-03-26
  • 打赏
  • 举报
回复
ding
liyoubaidu 2009-06-12
  • 打赏
  • 举报
回复
up
shuxue10086 2009-06-12
  • 打赏
  • 举报
回复
现在懂了。。。
wfyfngu 2008-09-09
  • 打赏
  • 举报
回复
准确的说,应该叫 值类型的可空值类型

我们知道,引用类型(Class)的默认值是 null
而值类型(Struct)永远都不能等于 null
但是在数据库中,一个整形(int)字段又可以赋值为 null
为了解决这个问题,微软在 FCL 2.0 及其以后的版本加入了 值类型(Struct)的可空支持

而问号是C#的一种简写语法,不一定适合其它语言
Nullable <int>[] arrs 等价于 int?[]
蓝色木 2008-09-09
  • 打赏
  • 举报
回复
楼上的都说了,我只能凑凑热闹了。
justindreams 2008-09-09
  • 打赏
  • 举报
回复
[]表示数组,在你这里就是Nullable <int>的一个数组,数组里面的元素是Nullable <int>
int?表示可以包含null
崔鹏飞 2008-09-09
  • 打赏
  • 举报
回复
int?在这里和Nullable <int>等价哈?
sjm2003 2008-09-09
  • 打赏
  • 举报
回复

Nullable <int>[] arrs = new Nullable <int>[5]; 这是泛型数组啊

代码定义了一个范型可空数组,数组内为整型元素

foreach (int? j in arrs)
因为前面定义了可空类数组,为了避免搜到空值而出错,所以定义J也能为空.
lgz7667597 2008-09-09
  • 打赏
  • 举报
回复
Nullable <int>[] arrs = new Nullable <int>[5]; 这是泛型数组啊

foreach遍历arrs里面的元素,int是arrs里面的元素类型
西安风影 2008-09-09
  • 打赏
  • 举报
回复
[]:表示数组 声明
int?:对于那些不能赋值为null的变量可以赋null
比如int,double,datatime等
绝代坏坏 2008-09-09
  • 打赏
  • 举报
回复
数组
brallow 2008-09-09
  • 打赏
  • 举报
回复
?表示这是一种特殊的整数类型,表示“可空”。
主要用于数据库中,比如有一个数据库字段定义为int,但它标记了null,对于这种数据库的值除了int范围内的值之外,还有一个可能就是null。
int? k;
仍然是一个结构体数据,它和其它操作特性和普通整数完全相同,但它可以进行如下操作
k=null;
k==null;


[]是声明数组。
shalen520 2008-09-09
  • 打赏
  • 举报
回复
[]:数组
int?:可赋null值的int类型
llxzj60 2008-09-09
  • 打赏
  • 举报
回复
学习了
delphi_new 2008-09-09
  • 打赏
  • 举报
回复
一看就懂
hm7921936 2008-09-09
  • 打赏
  • 举报
回复
MSDN
真的没有吗?

哦呵呵.
wolf_life 2008-09-09
  • 打赏
  • 举报
回复
[] 是表示他是一个可空的值类型数组

int? 是表示 ,,int i = 0,等数值外还可以int i = null;
DshirenJ 2008-09-09
  • 打赏
  • 举报
回复
俺也不懂

110,598

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧