go中的快捷方式分配排除空/零值

时间:2018-03-01 02:47:16

标签: go

这可以在python / javascript中完成:

# Python:
a = ""
b = "test"
c = a or b # test

// javascript
a = "";
b = "test";
c = a || b; // test

可以在没有做一些条件块的情况下完成相同的操作吗?到目前为止,我能够做到这一点的唯一方法是使用条件块......

a := ""
b := "test"
var c
if a {
    c = a
} else {
    c = b
}

我认为这就是答案,不会,这不可能完成",但我想我会问以防万一我错了。这里的例子是简化的。变量ab很久以前就已经定义了......

1 个答案:

答案 0 :(得分:1)

来自golang FAQThere is no ternary testing operation in Go. You may use the following to achieve the same result:

if expr {
    n = trueVal
} else {
    n = falseVal
}
相关问题