2015-09-27 43 views
-1

我必须编写一个基于英国超速罚款的程序。因此,如果驾驶员在3年内得到12个或更多的罚分,并且如果他/她仍然在2年内通过驾驶考试,他/她将被取消驾驶资格,他/她的驾驶执照将会被撤销(撤回),如果他/她建立6个或更多的惩罚点。Java if语句逻辑&&运算符给出错误

这里是我的程序:

package lesson1; 
import java.util.*; 
public class MyClass{ 

public static void main(String[] args) { 
    Scanner sc=new Scanner (System.in); 


    speeding_penalties(13,2); 


} 

public static void speeding_penalties(int points, int years){ 


    if((points=>12)&& (years<=3)){ 
     System.out.println("disqualified"); 

    } 

    else if((points=>6)&& (years<=2)){ 
     System.out.println("revoked driving license"); 
    } 


    } 
} 

的问题是,我在if语句得到一个错误,给了我以下错误:

`操作& &是未定义的参数类型(s)int,boolean'

编辑: 谢谢大家的答案!我通过将运算符更改为> =来编辑程序,但仍然在编译程序时,打印语句未出现。

+4

'=>'不是Java中的运算符,而是使用'> ='。 –

回答

3

您的操作员有错误。 这是'>=''<='(您使用'=>')。

+0

我纠正了我的错误,但仍然在调用函数时,打印语句不会在编译程序时出现。 – Tia

+0

@Diksha,我复制了你的代码,修复了两个'=>'错误,将它保存为MyClass.java,'javac MyClass.java','java MyClass'并打印出'disqualified'。等待编译完程序后?你也必须运行它。 – Froziph

+0

@Froziph我确实运行过它,但它不打印'不合格' – Tia

2
points=>12 

如果你仔细看,你需要写points>=12

=>得到治疗的赋值操作符,其中>=是关系运算符,它会针对给定值。

points=>12-->默默地分配值到points并返回points

points>=12-->支票points> = 12的值,并返回一个boolean

0

这是一个语法错误:

points=>12 

它应该是:

points>=12