请看@accdias所指的https://golangdocs.com/ternary-operator-in-golang(见评论)
我可以像在 php 中那样在 go(golang) 中编写一个简单的带有变量赋值的 if-else 语句吗?例如:
$var = ( $a > $b )? $a: $b;
目前,我必须使用以下方法:
var c int
if a > b {
c = a
} else {
c = b
}
很抱歉,如果这个控制声明我记不起名字,我也无法在网站或谷歌搜索中找到信息。:/
正如其他人提到的,Go
不支持三元单行程序。但是,我编写了一个实用程序函数,可以帮助您实现您想要的。
// IfThenElse evaluates a condition, if true returns the first parameter otherwise the second
func IfThenElse(condition bool, a interface{}, b interface{}) interface{} {
if condition {
return a
}
return b
}
下面是一些测试用例,展示如何使用它
func TestIfThenElse(t *testing.T) {
assert.Equal(t, IfThenElse(1 == 1, "Yes", false), "Yes")
assert.Equal(t, IfThenElse(1 != 1, nil, 1), 1)
assert.Equal(t, IfThenElse(1 < 2, nil, "No"), nil)
}
为了好玩,我编写了更多有用的实用程序函数,例如:
IfThen(1 == 1, "Yes") // "Yes"
IfThen(1 != 1, "Woo") // nil
IfThen(1 < 2, "Less") // "Less"
IfThenElse(1 == 1, "Yes", false) // "Yes"
IfThenElse(1 != 1, nil, 1) // 1
IfThenElse(1 < 2, nil, "No") // nil
DefaultIfNil(nil, nil) // nil
DefaultIfNil(nil, "") // ""
DefaultIfNil("A", "B") // "A"
DefaultIfNil(true, "B") // true
DefaultIfNil(1, false) // 1
FirstNonNil(nil, nil) // nil
FirstNonNil(nil, "") // ""
FirstNonNil("A", "B") // "A"
FirstNonNil(true, "B") // true
FirstNonNil(1, false) // 1
FirstNonNil(nil, nil, nil, 10) // 10
FirstNonNil(nil, nil, nil, nil, nil) // nil
FirstNonNil() // nil
如果你想使用这些,你可以在这里找到https://github.com/shomali11/util
正如评论所提到的,Go不支持三元一行程序。我能想到的最短形式是:
var c int
if c = b; a > b {
c = a
}
但请不要这样做,这不值得,只会让阅读您代码的人感到困惑。
基本上,我要做的就是获取textfields数据,将其放入数组中,然后检查用户名/密码是否大于或等于6。我完全搞不懂为什么这总是要去别的地方?答案大概很明显,但我卡住了! 代码:
Swift 条件语句 一个 if 语句 后可跟一个可选的 else if...else 语句,else if...else 语句 在测试多个条件语句时是非常有用的。 当你使用 if , else if , else 语句时需要注意以下几点: if 语句后可以有 0 个或 1 个 else,但是如果 有 else if 语句,else 语句需要在 else if 语句之后。 if 语句后可以有 0
else语句可以与if语句结合使用。 else语句包含else语句中的条件表达式解析为0或FALSE值时执行的代码块。 else语句是一个可选语句, else后面最多只能有一个else语句。 语法 (Syntax) if...else语句的语法是 - if expression: statement(s) else: statement(s) 流程图 (Flow Diagram) 例
我的程序有问题,我在使用if-else语句 在我的程序中,我试图计算字符串上的元音和辅音。我已经知道怎么做了,我的问题是我想添加一条“错误”消息,如果用户输入非字符串,它将显示错误框。 “尝试运行程序,用户将输入一个“字符串”,如果用户按“排序”,它将计算元音和辅音。我需要的是如果用户不会输入“字符串”,例如双精度或int…等等,只要它不是字符串,它就会显示错误框。
我试图通过这段代码来展示我对Python的基础知识的了解,并且它可以工作: 我还想通过这段代码展示我对Java基础知识的了解,但它不起作用: 我很困惑,因为这一个确实有效: 你们知道怎么了吗?
主要内容:if 语句,实例,if...else 语句,实例,if...else if...else 语句,实例,if...else 嵌套语句,实例Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: if 语句 if 语句有布尔表达式及之后的语句块组成。 语法 if 语句的语法格式如下: 如果布尔表达式为 true 则执行大括号内的语句块,否则跳过大括号内的语句块,执行大括号之后的语句块。 实