我知道我这么高兴但是我想通过我的中期
我遇到的许多问题之一是 “”编写一个if-else语句,如果变量x大于100,则将20分配给变量y。否则,它应该为变量y指定0。“
import java.util.Scanner;
public class ifelseprac1 {
public static void main(String[] args) {
int y;
int x=0;
Scanner keyboard = new Scanner(System.in);
System.out.print("Enter a number for x: ");
x=keyboard.nextInt(x);
if (x>100)
y=20;
else
y=0;
}
}
我得到的错误代码是
配置:ifelseprac1 - JDK版本1.8.0_25
Enter a number for x: Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 525
答案 0 :(得分:4)
而不是:
x = keyboard.nextInt(x);
执行:
x = keyboard.nextInt();
如果您将参数传递给nextInt
,则会将其解释为输入的整数的基数。
我猜测,对于某些基数,Java生成的用于提取整数的正则表达式是不正确的,但需要调试JDK才能确定。
答案 1 :(得分:0)
应该是这样的:
x = keyboard.nextInt();