如何在JAVA中使用NOT运算符作为整数

时间:2017-05-28 07:08:42

标签: java operators logical-operators

如何在JAVA enter image description here

中使用NOT运算符作为整数

当我把NOT运算符(!)时,它显示错误 包com.learnJava.first;

  > library('lubridate')
> library('dplyr')
> 
> InvoiceDate  <- c('2011-01-10 09:58:00', '2011-02-15 09:52:00', '2011-03-03 10:59:00')
> CustomerID   <- c(111, 111, 111)
> 
> dat <- data.frame('Invo' = InvoiceDate, 'ID' = CustomerID)
> 
> dat %>% mutate('Delta' = as_date(Invo) - as_date(lag(Invo)))
                 Invo  ID   Delta
1 2011-01-10 09:58:00 111 NA days
2 2011-02-15 09:52:00 111 36 days
3 2011-03-03 10:59:00 111 16 days

2 个答案:

答案 0 :(得分:6)

您需要使用the bitwise complement operator, ~,而不是the logical complement operator, !

但是,您的代码似乎有点不匹配:您的类名为LogicalOpTable,但您使用的是按位运算符,而不是逻辑运算符。

如果您确实想要执行逻辑操作,请使用boolean值代替int s。

如果你真的想做按位操作,请为你的类命名,这样就不会让人感到困惑;)

答案 1 :(得分:1)

一年后,但是,嘿,也许它仍然相关。

我在这个练习中遇到了同样的问题,但我采取了不同的方式。如果我没有弄错,p和q最初是布尔类型,任务是修改表格以显示1和0而不是真和假。

我所做的是将每个表达式作为一个整体从boolean转换为int(例如int a =(!p)?1:0;)并将其替换为其余代码的变量(例如System.out。 println(..... + a);)