操作员!不能应用于int

时间:2019-08-25 20:40:10

标签: java operators not-operator

在C ++中,!1表示false,它等效于0。我在Java中应用了相同的规则,但是IDE告诉我!无法应用于int。 Java中有什么方法可以将!应用于int而不是仅仅编写truefalse

3 个答案:

答案 0 :(得分:4)

不,不是Java语言。
在java中!只能以布尔值作为取反运算符进行操作,在Java中1/0不被视为布尔值

答案 1 :(得分:1)

!仅适用于Java中的布尔值或条件语句的结果。您可以做的最接近的事情是int x; ReportPeriod = listBox1.SelectedItems[x].ToString(); if(ReportPeriod == "Daily Call Data"){ try{ string UploadDir = "C:\folder\daily\filename.xls"; more code... }catch(Exception){ More code... } } Else If (ReportPeriod == "Weekly Call Data"{ try{ string uploadDir = "C:\folder\weekly\filename.xls"; } } if (x == 1)

答案 2 :(得分:0)

不,运算符不能处理原始数据类型,当然,布尔值除外。使用!0只会导致错误。即使0和1都可以视为布尔值,但它们不在Java中。否定运算符仅适用于布尔值。像!0这样的东西是:

boolean alwaysfalse = (0 != 0);

boolean alwaysTrue = (0 == 0);