为什么不用Java(v1.8)计算。对我来说似乎完全合乎逻辑......
<table class="table table-striped" id="datatable-editable">
<thead>
<tr>
<th>Name</th>
<th>Dept</th>
<th>Salary</th>
<th>Date</th>
<th style="min-width: 80px;">Action</th>
</tr>
</thead>
<tbody class="searchable">
<tr class="gradeX">
<td>Name</td>
<td>IT</td>
<td>USD 1200</td>
<td>USD 1200</td>
<td class="actions">
<a href="#" class="hidden on-editing save-row"><i class="fa fa-save"></i></a>
<a href="#" class="hidden on-editing cancel-row"><i class="fa fa-times"></i></a>
</td>
</tr>
</tbody>
</table>
输出消息:错误:java:不是声明
答案 0 :(得分:12)
三元条件运算符必须返回一个值。第二和第三个操作数不能是不返回任何内容的语句。它们必须是返回值的表达式。
您可以将其切换为:
System.out.println(banana ? "True" : "False");
请注意,banana == true || false
相当于banana == true
,相当于banana
,banana
本身就是boolean
类型。
答案 1 :(得分:2)
这个怎么样?
System.out.println(banana ? "true" : "false");
三元运算符始终必须返回我们正在打印的值。
另一种方法是仅使用if-else
语句,但它并不漂亮。
if(banana)
System.out.println("true");
else
System.out.println("false");
答案 2 :(得分:2)
Java Language Specification §15.25说:
第二个或第三个操作数是编译时错误 表达式是一个void方法的调用。
最好这样试试:
System.out.println(banana ? "true" : "false");
答案 3 :(得分:2)
你想要的是
boolean banana = true;
System.out.println(banana ? "True" : "False");
? :
运算符必须返回一个值,而println是void
方法。它不仅可以满足您的需求,而且更加简洁。
请注意
banana == true
与
相同banana
和
x || false
与
相同x
除非您需要打印“True”而不是“true”,否则您可以
System.out.println(banana);
答案 4 :(得分:1)
您使用不当。
Java三元运算符(也称为条件运算符)的一个用途是将两个变量的最小(或最大)值分配给第三个变量,基本上替换Math.min(a,b)或Math.max (a,b)方法调用。这是一个将最少两个变量a和b分配给名为minVal的第三个变量的示例:
minVal = (a < b) ? a : b;
你可以这样做。
if(boolean)
System.out.println("True");
else
System.out.println("False");
答案 5 :(得分:0)
我想因为Java不会允许这样的声明。
尝试使用if
声明。
boolean banana = true;
if (banana == true || false) System.out.println("True"); else System.out.println("False");
答案 6 :(得分:0)
因为只有假香蕉:https://en.wikipedia.org/wiki/False_banana。没有任何一个“真正的”香蕉。您可能会想到“真正的车前草”,请参见https://en.wikipedia.org/wiki/True_plantains。将香蕉更改为false可以使您的代码再次适应生物学。