我无法弄清楚如何读取输入线的其余部分。我需要标记第一个单词然后可能创建输入行的其余部分作为一个完整的标记
public Command getCommand()
{
String inputLine; // will hold the full input line
String word1 = null;
String word2 = null;
System.out.print("> "); // print prompt
inputLine = reader.nextLine();
// Find up to two words on the line.
Scanner tokenizer = new Scanner(inputLine);
if(tokenizer.hasNext()) {
word1 = tokenizer.next(); // get first word
if(tokenizer.hasNext()) {
word2 = tokenizer.next(); // get second word
// note: just ignores the rest of the input line.
}
}
// Now check whether this word is known. If so, create a command
// with it. If not, create a "null" command (for unknown command).
if(commands.isCommand(word1)) {
return new Command(word1, word2);
}
else {
return new Command(null, word2);
}
}
输入:
take spinning wheel
输出:
spinning
期望的输出:
spinning wheel
答案 0 :(得分:3)
使用split()
String[] line = scan.nextLine().split(" ");
String firstWord = line[0];
String secondWord = line[1];
这意味着您需要在空间拆分线并将其转换为数组。现在使用yhe索引你可以得到你想要的任何单词
答案 1 :(得分:0)
或 -
String inputLine =//Your Read line
String desiredOutput=inputLine.substring(inputLine.indexOf(" ")+1)
答案 2 :(得分:0)
你也可以尝试这样......
String s = "This is Testing Result";
System.out.println(s.split(" ")[0]);
System.out.println(s.substring(s.split(" ")[0].length()+1, s.length()-1));
答案 3 :(得分:0)
使用split(String regex, int limit)
String[] line = scan.nextLine().split(" ", 2);
String firstWord = line[0];
String rest= line[1];
在此处参考doc