int的错误消息不能转换为布尔值和错误的操作数||

yzuktlbb  于 2021-07-11  发布在  Java
关注(0)|答案(1)|浏览(293)
import java.io.*;
import java.math.*;
import java.security.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.regex.*;

public class Solution {

    private static final Scanner scanner = new Scanner(System.in);

    public static void main(String[] args) {
        int N = scanner.nextInt();
        scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");

        if ( N % 2 == 1) 
        {
        System.out.println("Weird");
        } 
        else if ( N % 2 == 0 && N <= 20 && N >= 6 )
        {
        System.out.println("Weird");
        }
        else if ( N = 2 || 4)
        {
        System.out.println("Not Weird");
        }
        else
        {
        System.out.println("Not Weird");
        }
        scanner.close();

        System.out.println(N);
    }

}
错误消息解决方案。java:27:错误:二进制运算符“| |”else if(n=2 | | 4)^第一种类型:int第二种类型:int solution的操作数类型错误。java:27:错误:不兼容类型:int不能转换为布尔else if(n=2 | | 4)^

rkue9o1l

rkue9o1l1#

您需要使用以下选项:

else if ( N == 2 || N == 4)

在本例中:

else if ( N = 2 || 4)

有两个问题。
您正在分配 n 而不是比较。
4不是布尔值

相关问题