我在C#中遇到了以下代码.
if(condition0) statement0;
else if(condition1) statement1;
else if(condition2) statement2;
else if(condition3) statement3;
...
else if(conditionN) statementN;
else lastStatement;
Run Code Online (Sandbox Code Playgroud)
我的一些同事告诉我,这是一个else if声明.但是,我确信它实际上是一个多层嵌套if-else语句.我知道没有分隔符{},一个if或多个语句中允许一个语句else.所以在这种情况下,我认为它将等同于以下代码.
if(condition0)
statement0;
else
if(condition1)
statement1;
else
if(condition2)
statement2;
else
if(condition3)
statement3;
else
...
Run Code Online (Sandbox Code Playgroud)
请注意,我改变的只是空白.这种缩进是有效的,因为当没有分隔符时,每个缩进else都会返回到最近的if语句.
任何人都可以澄清else if第一个例子中的格式是否被编译器if-else与第二个例子中的嵌套格式区别对待?
我的同行之间讨论了"if"语句是否被视为一种方法的有趣讨论?尽管"if"附加了单词statement,但它仍然表现得类似于简单的非返回值方法.
例如:
if(myValue) //myValue is the parameter passed in
{
//Execute
}
Run Code Online (Sandbox Code Playgroud)
同样,方法可以执行相同的操作:
public void MyMethod(myValue)
{
switch(myValue)
{
case true:
//Logic
break;
case false:
//Logic
break;
}
}
Run Code Online (Sandbox Code Playgroud)
在编程语言中调用(考虑)"if"语句是一种简单的预定义方法是否准确?
language-agnostic programming-languages if-statement conditional-statements
我们如何在ember.js的If-block帮助器中检查值是否相等?
{{#if person=="John"}}
Run Code Online (Sandbox Code Playgroud)
我们如何在车把上进行上述操作?
到目前为止,我一直在搜索网络,声明总是有if和else条件如a ? b : c.我想知道是否if可以不使用三元语句else.假设我有以下代码,我希望关闭PreparedStatement它,如果它不是null
(我使用的是Java编程语言.)
PreparedStatement pstmt;
//....
(pstmt!=null) ? pstmt.close : <do nothing>;
Run Code Online (Sandbox Code Playgroud) 我在夏天一直使用"Accelerated C++"来学习C++,并且有一个我似乎无法理解的概念.
为什么是
int x;
if (cin >> x){}
Run Code Online (Sandbox Code Playgroud)
相当于
cin >> x;
if (cin){}
Run Code Online (Sandbox Code Playgroud)
通过查看代码,在我看来,我们使用cin作为变量.但是,我认为这是一个功能.为什么我们可以以这种方式使用cin,因为它是x,它具有我们输入键盘的任何值?
所以,我正在考虑在if-else语句中用逻辑运算符编写稍微复杂的操作.我知道我可以做括号,我知道这是更好的方法,但我已经好奇了,所以我会问.如果我做这样的事情:
if (firstRun == true || selectedCategory != undefined && selectedState != undefined) {
//Do something
} else {
//Do something else
}
Run Code Online (Sandbox Code Playgroud)
如何在不使用括号的情况下进行操作?我知道逻辑运算符有一个操作顺序,类似于PEMDAS,对吗?我很好奇它是否会像这样运行:
firstRun == true || (selectedCategory != undefined && selectedState != undefined)
Run Code Online (Sandbox Code Playgroud)
或者,如果'OR'运算符优先,它最终会像:
(firstRun == true || selectedCategory != undefined) && selectedState != undefined
Run Code Online (Sandbox Code Playgroud)
如果你能在某个地方找到完整列表,那么这个操作的顺序就会很好.谢谢!
我想我在Window的批处理脚本中遇到了一个错误.
我无法设置扩展if语句中的变量.
这是我的脚本的一个孤立的部分:
@echo off
set success=1
set Version=12345
set Target=Client
set Type=456
set dir=
set zip=
if "%Version%"=="" set success=0
if "%Type%"=="" set success=0
if 1==1 set test=42
if %success%==1 (
set test2=57005
if "%Target%"=="Client" (
set dir=ModName v%Version%
set zip=ModName v%Version% %Type%.zip
echo Version: %Version%
echo Type: %Type%
echo.
echo Target: %Target%
echo dir: %dir%
echo zip: %zip%
echo.
echo test: %test%
echo test2: %test2%
)
) else (
echo Not successful.
)
Run Code Online (Sandbox Code Playgroud)
这是一个全新的cmd实例的输出:
C:\Users\RandomClown\Desktop>test.bat
Version: 12345
Type: …Run Code Online (Sandbox Code Playgroud) 如果我有一个If有两个条件的陈述 - 第一个失败了,第二个条件是否会被考虑,还是会直接进入else?那么,在下面的例子中,如果myList.Count == 0,将myString与"值"进行比较,还是直接进行else?
if(myList.Count > 0 && myString.Equals("value"))
{
//Do something
}
else
{
//Do something else
}
Run Code Online (Sandbox Code Playgroud) 如何在Ruby中编写这个多行,复杂的if语句?
if ( (aa != nil && self.prop1 == aa.decrypt)
|| (bb != nil && self.prop2 == bb.decrypt)
) && (self.id.nil? || self.id != id)
return true
end
Run Code Online (Sandbox Code Playgroud)
我到了Syntax error; unexpected tOROP.
在Java中,我可以写
if (
( (aa != null && aa.prop1.equals(aa.decrypt()))
|| (bb != null && bb.prop2.equals(bb.decrypt()))
)
&& (this.id != id)
) {
return true;
}
Run Code Online (Sandbox Code Playgroud) 可能重复:
在Javascript中比较NaN值是否相等
谁能告诉我为什么这不起作用?
if(inbperr == NaN){
document.getElementById('inbclo').value = "N/A";
}
else{
document.getElementById('inbclo').value = "%" + inbperr;
}
Run Code Online (Sandbox Code Playgroud)
而不是返回一个百分比值或"N/A",就像我想要它返回"%NaN".
if-statement ×10
c# ×2
javascript ×2
.net ×1
batch-file ×1
c++ ×1
cin ×1
conditional ×1
ember.js ×1
java ×1
logic ×1
nan ×1
ruby ×1
set ×1
variables ×1