首页 新闻 赞助 找找看

如下:as转换成功为什么不能显示0?

0
悬赏园豆:20 [待解决问题]
    public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//枚举类型
enum Season
{
spring=1,summer,fall,autumn=fall,winter
}
private void Form1_Load(object sender, EventArgs e)
{
Season k = Season.summer;
MessageBox.Show(k.ToString());

object o = k;
int? i = 9;
i = o as int?;
if (o == null)
{
MessageBox.Show("fail");
}
else
{
MessageBox.Show(i.ToString());
}

//int i = (int)k;
//MessageBox.Show(i.ToString());

}
}
c#
keiling的主页 keiling | 初学一级 | 园豆:15
提问于:2012-03-03 20:51
< >
分享
所有回答(2)
0

因为i 是null

Firen | 园豆:5385 (大侠五级) | 2012-03-03 21:43

o as int? 因为o 不是int?类型 , o as int? 就返回null

支持(0) 反对(0) Firen | 园豆:5385 (大侠五级) | 2012-03-03 21:44
0

如下:as转换成功为什么不能显示0?

没有证据显示as转换成功了。as转换永远都不会抛出异常,如果失败那么转换结果为null。


水牛刀刀 | 园豆:6350 (大侠五级) | 2012-03-04 15:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册