也许只需要一个String
的方法,但我真的需要从Scanner
输入得到第二个单词的值,如下所示:
Scanner in = new Scanner(System.in);
String a;
a = in.nextLine();
答案 0 :(得分:2)
使用http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-
像这样a.split(" ")
,结果将是大小为2的数组,其中第二个元素将是results.txt
答案 1 :(得分:2)
假设您将“单词”定义为由空格分割的部分,并且输入了两个单词:
Scanner in = new Scanner(System.in);
String a;
a = in.nextLine();
String secondWord = a.substring(a.indexOf(" "));
如果可能有更多,请使用split:
Scanner in = new Scanner(System.in);
String a;
a = in.nextLine();
String secondWord = a.split("\\s+")[1];
答案 2 :(得分:1)
您可以使用scanner.next()
。一个单元测试用例来证明:
@Test
public void testSecondWordSingleLine() {
Scanner scanner = new Scanner("hello hi there");
scanner.next();
assertEquals("hi", scanner.next());
}
如果第二个单词在新行上,它也可以工作,例如:
@Test
public void testSecondWordMultiLine() {
Scanner scanner = new Scanner("hello\nhi there");
scanner.next();
assertEquals("hi", scanner.next());
}
@Test
public void testSecondWordMultiLineWithNextLineFirst() {
Scanner scanner = new Scanner("hello\nhi there");
scanner.nextLine();
assertEquals("hi", scanner.next());
}