reginaldtimothy 2022-03-01 08:11 采纳率: 44.4%
浏览 25
已结题

写代码的时候偶然把%错打成&

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

public class Demo2If {
public static void main (String[] args){
int num = 10;
if (num % 2 == 10){

运行结果及报错内容

D:\soft\Notepad++>java Demo2If.java
Demo2If.java:4: 错误: 二元运算符 '&' 的操作数类型错误
if (num & 2 == 0){
^
第一个类型: int
第二个类型: boolean
1 个错误
错误: 编译失败

我的解答思路和尝试过的方法
我想要达到的结果

对于报错要如何理解

  • 写回答

2条回答 默认 最新

  • 谛凌 2022-03-01 08:33
    关注
    • & 既是位运算符又是逻辑运算符,&的两侧可以是int,也可以是boolean表达式,当&两侧是int时,要先把运算符两侧的数转化为二进制数再进行运算,而短路与(&&)的两侧要求必须是布尔表达式。

    由于你用了一个int,一个boolean,所以报错了
    有帮助请点个采纳~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月9日
  • 已采纳回答 3月1日
  • 创建了问题 3月1日

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 CSS实现渐隐虚线框
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容