我不想在三元运算符中放置更多的条件,而是在计算一个条件后运行2个语句。
if-else结构将是:
if( maleCardColor == inactiveCardColor ) {
// i want to run both these lines in ternary operator
**maleCardColor = activeCardColor;
femaleCardColor = inactiveCardColor;**
} else {
maleCardColor = inactiveCardColor;
}
我想这样使用它:_
maleCardColor = (maleCardColor==inactiveCardColor)? (maleCardColor = activeCardColor && femaleCardColor = inactiveCardColor) : maleCardColor = inactiveCardColor ,
4条答案
按热度按时间bbuxkriu1#
据我所知,如果你想在三元运算符中使用多行,你可以使用下面两种方法。
第一种方法适用于三元满足,第二种方法适用于三元不满足。
mec1mxoz2#
我想你可以写这个,但我要说它的可读性很差,在我看来风格也很糟糕。
这样做的原因是因为在dart中赋值也会返回它所赋值的值,所以赋值是作为三元组条件的一部分来执行的,只需将它与要赋值的对象进行比较即可。如果条件的第一部分已经为false,那么它就不会执行,因为如果它前面的条件已经为false,那么它甚至不会越过
&&
进行查找ct2axkht3#
您可以定义一个
run
顶级函数,并使用它来执行多个语句:对于三元运算符,它看起来如下所示:
我认为这类似于同名的
Kotlin
函数。hlswsv354#