Java 为什么这个switch语句不起作用?
我测试了如果我输入“35”,它将返回true,尽管我认为它应该返回false! 怎么了?在.next()中使用而不是Java 为什么这个switch语句不起作用?,java,string,switch-statement,hashcode,Java,String,Switch Statement,Hashcode,我测试了如果我输入“35”,它将返回true,尽管我认为它应该返回false! 怎么了?在.next()中使用而不是 下列国家的文件: 查找并返回此扫描程序中的下一个完整令牌 因此,当您输入35作为输入时,当您调用下一个方法时,它将只读取3,如果您再次调用下一个方法,它将读取5。您认为.next()中的有什么作用?你为什么这么认为?in.next()只读取第一个数字。使用nextLine()读取实际操作,然后使用Scanner\nextLine代替为什么要这样做?(我知道答案,但你需要告诉OP;
下列国家的文件:
查找并返回此扫描程序中的下一个完整令牌
因此,当您输入
35
作为输入时,当您调用下一个方法时,它将只读取3,如果您再次调用下一个方法,它将读取5。您认为.next()中的有什么作用?你为什么这么认为?in.next()
只读取第一个数字。使用nextLine()
读取实际操作,然后使用Scanner\nextLine
代替为什么要这样做?(我知道答案,但你需要告诉OP;)@MadProgrammer-你不必说-我知道答案。我们知道你知道:P@TheLostMind人们经常把我误认为是OP;)@疯狂程序员-如果他们知道如何将鼠标悬停在一个人的名字上就好了:)
import java.util.Scanner;
public class VerticalWire {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("how many wires");
String howManyWires = in.next();
switch(howManyWires) {
case "3":
{
System.out.println("true");
break;
}
case "3 5":
{
System.out.println("false");break;}
}
}
}