Questions tagged «conditional-operator»

条件运算符是三元运算符,它是几种编程语言中基本条件表达式的语法的一部分。它通常也称为三元运算符或inline if。对于相同的构造,不同的语言具有不同的语法,但是所有语言都根据条件在两个选项之一之间进行选择。

5
Lambda的C ++三元赋值
知道为什么以下代码段无法编译吗?它报错“错误:?的操作数:具有不同的类型” auto lambda1 = [&](T& arg) { ... }; auto lambda2 = [&](T& arg) { ... }; auto lambda = condition ? lambda1 : lambda2;

1
赋值时,Java三元行为异常。Java在幕后为此做了什么?
几天前,我遇到了一个令人着迷的场景,我找不到任何有关Java如何或为什么使以下情况发生的文档。(此代码段只是该错误的简化形式。) @Test public void test() { boolean bool = false; Integer intVal = Integer.valueOf(5); Long longVal = null; Long result = bool ? intVal : longVal; System.out.println(" > " + result); } 在上面的代码段中: 如果bool = true,则得到的值为'5'; 但是如果bool = false,则在尝试评估三元运算时会得到空指针异常。不是打印语句。 为了解决这个问题,我只是将“结果”更改为 Long result = bool ? Long.valueOf(intVal) : longVal; 这样做,将给出我所需的预期行为: 如果bool …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.