在下面的代码&&
中,if else语句中给出了语法错误,我不确定如何解决它.有人能提供解决方案吗?
//Importing scanner
import java.util.Scanner;
public class Credithistory {
public static void main(String[] args) {
//Stating scanner gets its input from console
Scanner scanner= new Scanner (System.in);
//declaring int and boolean
int age;
boolean goodCreditHistory;
System.out.println("Please enter your age... ");
age= scanner.nextInt();
System.out.println("Do you have a good credit history (true or flase)?");
goodCreditHistory= scanner.nextBoolean();
if (age>=18) && ( goodCreditHistory== true){ // <-------------- Error
System.out.println("You have got a credit card!");
} else
System.out.println ("Sorry you are not eligible for a credit card.");
}
}
Run Code Online (Sandbox Code Playgroud)
Mau*_*ren 14
这是因为你把括号括起来了.该if
语句已由两个括号组成,因此您必须将语句写为
if ((age>=18) && (goodCreditHistory == true))
Run Code Online (Sandbox Code Playgroud)
代替
if (age>=18) && (goodCreditHistory == true)
Run Code Online (Sandbox Code Playgroud)
因为你的statement(&& (goodCreditHistory == true)
)的第二部分被解析,好像它是if
正文的一部分.
您可以用更简洁的方式编写此声明
if(age >= 18 && goodCreditHistory)
Run Code Online (Sandbox Code Playgroud)
不需要额外的括号.== true
声明也是多余的.
正确的语法是
if (age>=18 && goodCreditHistory){
}
Run Code Online (Sandbox Code Playgroud)
删除不必要的括号.而且你也不需要写
goodCreditHistory== true
Run Code Online (Sandbox Code Playgroud)
因为它已经是一个 boolean
.
归档时间: |
|
查看次数: |
161 次 |
最近记录: |