Java 扫描仪中的变量出现故障
有人能解释一下,如果我手动键入,为什么“pyt11”会接受“yes”,但如果我从扫描器中获取,并将字符串“a”放在看不到我的变量的地方,为什么会这样 从pyt11(a)(如果我在扫描器中键入“是”)得到b值0 从pyt11(“是”)给我b值20 有人知道为什么Java 扫描仪中的变量出现故障,java,Java,有人能解释一下,如果我手动键入,为什么“pyt11”会接受“yes”,但如果我从扫描器中获取,并将字符串“a”放在看不到我的变量的地方,为什么会这样 从pyt11(a)(如果我在扫描器中键入“是”)得到b值0 从pyt11(“是”)给我b值20 有人知道为什么 public static Scanner into; public static void main(String[] args) { into = new Scanner(System.in); String a =
public static Scanner into;
public static void main(String[] args)
{
into = new Scanner(System.in);
String a = into.nextLine();
System.out.println(a);
System.out.println(pyt11(a));
System.out.println(pyt11("yes"));
}
static int pyt11(String odp11)
{
int b = 0;
if (odp11 == "yes")
{
b = 20;
}
else if (odp11 == "maybe" || odp11 == "partially")
{
b = 10;
}
else if (odp11 == "no")
{
b = 0;
}
return b;
}
你应使用:
if (odp11.equals("yes"))
比较字符串时,请使用==
测试一个引用等式而不是值