运营商||未定义参数类型int,int

时间:2014-01-26 21:33:09

标签: java int undefined operator-keyword

我的Java代码没什么问题。我正在使用下面的代码,但Eclipse总是提示相同的消息“对于参数类型int,int”,运算符||未定义。

有人对此有所了解吗?请帮忙。非常感谢;

import javax.swing.*;
public class Demo {
    public static void main(String[] args){

        int pozitif = 0;
        int negatif = 0;
        int cevap;

        String Soru1 = "Soru1";
        String Soru2 = "Soru2";
        String Soru3 = "Soru3";
        String Soru4 = "Soru4";
        String Soru5 = "Soru5";
        String Soru6 = "Soru6";

        String Soru[] = {Soru1,Soru2,Soru3,Soru4,Soru5,Soru6};

        for(int i = 0; i < Soru.length; i++){

            cevap = Integer.parseInt(JOptionPane.showInputDialog(i + 1 + ". soru " + Soru[i]));
            if(cevap == 1){
                pozitif++;
            }if(cevap == 0){
                negatif++;
            }if(cevap != (1 || 0)){  // !!! Problem is here!!!
                Integer.parseInt(JOptionPane.showInputDialog(i + 1 + ". soru " + Soru[i] + "Lütfen (1) ve (0) giriniz!!!"));
            }

        }

        System.out.println("Pozitif: " + pozitif);
        System.out.println("Negatif: " + negatif);

    }
}

2 个答案:

答案 0 :(得分:4)

您需要else语句:

if (cevap == 1){
    pozitif++;
} else if (cevap == 0) {
    negatif++;
} else {
    Integer.parseInt(JOptionPane.showInputDialog(i + 1 + ". soru " + Soru[i] + "Lütfen (1) ve (0) giriniz!!!"));
}

这可以满足你的需求:当cevap不等于10时,运行else块中的内容。如果你不想使用else块(我不知道为什么你不会),你可以使用更详细的(cevap != 1 && cevap != 0)

答案 1 :(得分:0)

您想将cevap与两个不同的数字进行比较。你必须这样做:

if (cevap != 1 && cevap != 0)

所以基本上它是“如果cevap不等于1而且cevap不等于0”。