c#两个符号?和: 本帖最后由 lgzy0220 于 2014-08-28 09:52:48 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 attribute.Equals("") ? xn.InnerText : xn.Attributes[attribute].Value=>if(attribute.Equals("")){xn.InnerText }else{xn.Attributes[attribute].Value} 三目运算符<表达式1>?<表达式2>:<表达式3>"?"运算符的含义是: 先求表达式1的值:如果表达式1的值为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果. 我直接给你解释什么意思吧。xn是获取xml一个节点,attribute是xml的节点,xn.Attributes[attribute].Value 这句是:节点.所有节点属性[节点属性名称].值value = (节点的属性是否为“”)?如果是的话,返回xn的节点值:如果不是的话,返回xn节点值 value = (节点的属性是否为“”)?如果是的话,返回xn的节点值:如果不是的话,返回xn节点属性值手残了 - - value=a?b:ca结果是True则value=b,否则就是c <逻辑表达式,返回bool>?<返回值表达式A>:<返回值表达式B>;首先执行逻辑表达式,如果为True,就执行并返回A的值,如果为False就执行并返回B的值。注意:A和B的返回类型必须一样!这个三目运算表达式也可以表示为下面这个意思:if(逻辑表达式){ return 返回值表达式A;}else{ return 返回值表达式B;}(貌似上面这个不太准确) 这是条件语句,"?"前是条件,条件成立则返回“:”前的值,否则返回”:“后的值value = (attribute.Equals("") ? xn.InnerText : xn.Attributes[attribute].Value);即:如果attribute.Equals("")为true,则value = xn.InnerText,否则 value =xn.Attributes[attribute].Value label的背景图小问题 最新文件夹 读取文件名? 父子窗体的问题 如何将两个程序打包到一个安装程式里面?实现 安装的时候可以选择安装其中的一个? (C#)怎么样限制文本框里只能输入数字,在线等答案 提问?初学c#,做好c#关于windwos应用程序,如何打包? c# 算法 均值计算 数据平稳性 数据分组 请教高手支招,不胜感谢! 急!!!如何使PANAL上的控件均锁定 C#中如何操作字符?? C# 队列的互斥访问问题 Access数据库中合并同一表ID重复的行
=>
if(attribute.Equals(""))
{
xn.InnerText
}
else
{
xn.Attributes[attribute].Value
}
<表达式1>?<表达式2>:<表达式3>
"?"运算符的含义是: 先求表达式1的值:
如果表达式1的值为真, 则执行表达式2,并返回表达式2的结果 ;
如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果.
我直接给你解释什么意思吧。xn是获取xml一个节点,attribute是xml的节点,xn.Attributes[attribute].Value 这句是:节点.所有节点属性[节点属性名称].值value = (节点的属性是否为“”)?如果是的话,返回xn的节点值:如果不是的话,返回xn节点值
a结果是True则value=b,否则就是c
首先执行逻辑表达式,如果为True,就执行并返回A的值,如果为False就执行并返回B的值。
注意:A和B的返回类型必须一样!
这个三目运算表达式也可以表示为下面这个意思:if(逻辑表达式)
{
return 返回值表达式A;
}
else
{
return 返回值表达式B;
}(貌似上面这个不太准确)
value = (attribute.Equals("") ? xn.InnerText : xn.Attributes[attribute].Value);
即:如果attribute.Equals("")为true,则value = xn.InnerText,否则 value =xn.Attributes[attribute].Value