java 谁能解释一下这种逻辑
java could anybody explain this type of logic
public class Second {
public static void main(String[] args) {
System.out.println(1>2?22:43);
int a,b;
a=11;
b=(a==116)?22:33;
System.out.println(b);
}
}
我是 java 初学者,我很难理解它打印 22 的这段代码,但我不明白它背后的逻辑,如果我必须了解更多关于它们的信息,它们又叫什么。
是否有任何类似的逻辑类型我应该留意任何建议 help.Thank 你!
这个1>2?22:43
相当于
if (1>2) then return 22 else return 43
该代码使用三元运算符根据布尔表达式分配变量。三元运算符是 Java if-else 语句的简单内联形式。这是三元运算符的结构。
<boolean expression> ? <value if true> : <value if false>
现在,让我们看看您的代码:
System.out.println(1>2 ? 22 : 43);
该行将打印出 43,因为布尔表达式 1>2 为假。
然后,看这部分:
int a,b;
a = 11;
b = (a==116) ? 22 : 33;
System.out.println(b);
该代码将打印出 33,因为布尔表达式 11==116 为假。
因此,该代码的最终输出不是 22。这是最终输出:
43
33
public class Second {
public static void main(String[] args) {
System.out.println(1>2?22:43);
int a,b;
a=11;
b=(a==116)?22:33;
System.out.println(b);
}
}
我是 java 初学者,我很难理解它打印 22 的这段代码,但我不明白它背后的逻辑,如果我必须了解更多关于它们的信息,它们又叫什么。
是否有任何类似的逻辑类型我应该留意任何建议 help.Thank 你!
这个1>2?22:43
相当于
if (1>2) then return 22 else return 43
该代码使用三元运算符根据布尔表达式分配变量。三元运算符是 Java if-else 语句的简单内联形式。这是三元运算符的结构。
<boolean expression> ? <value if true> : <value if false>
现在,让我们看看您的代码:
System.out.println(1>2 ? 22 : 43);
该行将打印出 43,因为布尔表达式 1>2 为假。
然后,看这部分:
int a,b;
a = 11;
b = (a==116) ? 22 : 33;
System.out.println(b);
该代码将打印出 33,因为布尔表达式 11==116 为假。
因此,该代码的最终输出不是 22。这是最终输出:
43
33