标签: ternary-operator

Python 中的一行布尔检查

我是一名相对较新的 Python 开发人员,但我有 Java 背景。在 Java 中,有一行布尔检查器/分配器(由于缺乏更好的术语):

int result = (x)?y:z;
Run Code Online (Sandbox Code Playgroud)

我试图在Python中使用类似的方法,但我不确定这个结构是否存在。有没有一种方法可以声明一个变量,检查条件是否为真并将其分配给两个值之一而不使用 if/else?

python boolean idioms ternary-operator

0
推荐指数
1
解决办法
4433
查看次数

VB.NET 中三元运算符语法的问题

我正在尝试在 vb.net 中使用三元运算符,但要确定要附加到字符串的内容,但我遇到语法问题...

为什么第三行在== 生成表达式预期错误时给出错误

Dim sb As New StringBuilder
Dim bln As Boolean
bln == true ? sb.append("True") : sb.Append("False")
' this also doesn't work
bln ? sb.append("True") : sb.Append("False")
Run Code Online (Sandbox Code Playgroud)

vb.net syntax ternary-operator

0
推荐指数
1
解决办法
848
查看次数

Java中三元运算符的优先级和赋值

为什么bar下面的方法可以编译却编译foo失败?

在此输入图像描述

java ternary-operator

0
推荐指数
1
解决办法
3040
查看次数

C++中const引用对象的条件赋值

这是一个说明我的问题的代码片段:

class A {...};
const A& foo1() {...}
const A& foo2() {...}

void foo3(int score) {
  if (score > 5)
    const A &reward = foo1();
  else 
    const A &reward = foo2();

  ...

  // The 'reward' object is undefined here as it's scope ends within the respective if and else blocks.

}
Run Code Online (Sandbox Code Playgroud)

如何在 if else 块之后访问reward对象foo3()?这是避免代码重复所必需的。

提前致谢 !

c++ ternary-operator const-reference

0
推荐指数
1
解决办法
651
查看次数

简单的PHP问题

我是速记条件语句的新手,我不能为我的生活做出如何做到这一点,这里是我的简单代码:

<?php

    function evolve_nav($vals) {

       echo '<'.$vals['type'] !== '' ? ''.$vals['type'].'' : 'darn''>';

    }

?>
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么这不会返回任何内容并导致错误?

php ternary-operator conditional-statements

-1
推荐指数
1
解决办法
150
查看次数

C++增加,用"?:"减少数字

我知道如何在C++中使用"?:"创建一个首先增加数字的代码,当它达到100时,它会减少,当它达到0时,它会再次增加.

好的澄清一下:起始编号:1,应写入1 - 100,然后写入100,100,99,98,97至0,依此类推.

#include <iostream>
using namespace std;

int main () {
int number = 1;
string sign = "plus";
for (int i = 700; i > 0; i--) {
    (number==0?sign="plus":(number==100?sign="minus":(sign=="plus"?number++:number--)));
    cout << number;
    usleep(3000);
}
}
Run Code Online (Sandbox Code Playgroud)

好!这当然不容易.(上面的代码不起作用,给出错误:无法将char转换为int)

问题:它不起作用,如何使其工作?

这不是作业..

c++ ternary-operator

-1
推荐指数
2
解决办法
7355
查看次数

何时何地使用三元运算符?

我经常在书中读到三元运算符(?:),但我不清楚它的最佳实践.它的优缺点或最佳实践是什么?

operators ternary-operator

-1
推荐指数
1
解决办法
84
查看次数

二进制逻辑运算符在Javascript中表达条件

我使用三元运算符,但经常想要检查没有else子句的东西.我想知道是否有任何简短的方法可以省略这一点.

我发现了

a ? b : {}
Run Code Online (Sandbox Code Playgroud)

作为替代if (a) {b},可以保存2个字符,但不能

a ? b :
Run Code Online (Sandbox Code Playgroud)

我认为这是有道理的,它是一个三元运算符.

我唯一的想法是那些空的花括号有点难看,有没有其他方法来指定一个空白的:语句?

或者,是否有二元?运算符?我在规范中翻找过,但看不出我是如何使用二进制逻辑运算符的,我猜这if就是为了什么.

有没有办法使用二进制逻辑运算符来表达{}的条件或简写?我知道这可能是3个角色的懒惰高度,但我只是好奇,如果有人有任何技巧可以分享.

javascript binary-operators ternary-operator logical-operators

-1
推荐指数
1
解决办法
1434
查看次数

PHP选择了Ternary Operator的动态选项

我有使用Ternory Operator方法选择selectbox的代码:

Ternary operator let us return one of two values based on a given condition. It’s syntax is like below.

(expression)?(if expression is true):(if expression is false)
Run Code Online (Sandbox Code Playgroud)

mycode的:

<select class="form-control contentgroup input-sm" name="access">
<option value="1" <?php echo ($access = 1) ? 'selected' : ''; ?>>1</option>
<option value="2" <?php echo ($access = 2) ? 'selected' : ''; ?>>2</option>
<option value="3" <?php echo ($access = 3) ? 'selected' : ''; ?>>3</option>
</select>
Run Code Online (Sandbox Code Playgroud)

但我输出我看到所有选项都被选中:

<select class="form-control contentgroup input-sm" name="access">
<option value="1" selected>1</option> …
Run Code Online (Sandbox Code Playgroud)

php ternary-operator

-1
推荐指数
1
解决办法
5638
查看次数

三元运算符在JS中无法正常工作

我正在运行以下代码并得到意外的结果:

var a = 1, b =2 ,c = 3;
console.log(5*a+ b>0?b:c);
Run Code Online (Sandbox Code Playgroud)
预期结果是:7,但得到2。

javascript ternary-operator ternary

-1
推荐指数
1
解决办法
59
查看次数