gpt4 book ai didi

java - 我收到从 int 到 boolean 类型不匹配的错误

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:22:16 25 4
gpt4 key购买 nike

代码是使用最后一位是 1 或 0 来检查数字是偶数还是奇数。如果最后一位是 1,它将进入 if 并打印奇数

import java.util.Scanner;

public class Even_or_odd {
public void Check_even_or_odd(int a) {
if(a&1)//error:Type mismatch: cannot convert from int to boolean
System.out.println("odd");
else
System.out.println("even");
}
public static void main(String[] args) {
System.out.println("enter a number to check even or odd");
Scanner scan=new Scanner(System.in);
int a=scan.nextInt();
scan.close();
Even_or_odd e=new Even_or_odd();
e.Check_even_or_odd(a);
}
}

最佳答案

您的代码测试 a 是否为奇数/偶数,方法是用 1 屏蔽其二进制表示,除最低有效位外,所有位都设置为零,设置为1

当用1 屏蔽时,奇数将产生1;偶数将产生零。但是,您不能写if (1)if (0),因为没有从intboolean< 的隐式转换 在 Java 中。你需要写

if ((a&1) != 0)

解决这个问题。

关于java - 我收到从 int 到 boolean 类型不匹配的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41408776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com