Java 使用scanner读取输入语句
我正在编写代码来读取由单词组成的简单语句,比如“一二三”,并将每个单词放入数组字符串[]标记中,我想使用Scanner输入语句,但它只读取第一个单词。 当我使用main方法输入语句时,它工作得很好。 我能知道我犯了什么错吗 以下是两个代码: //使用主要方法:Java 使用scanner读取输入语句,java,java.util.scanner,Java,Java.util.scanner,我正在编写代码来读取由单词组成的简单语句,比如“一二三”,并将每个单词放入数组字符串[]标记中,我想使用Scanner输入语句,但它只读取第一个单词。 当我使用main方法输入语句时,它工作得很好。 我能知道我犯了什么错吗 以下是两个代码: //使用主要方法: public class MyLangyage { public static void main(String[] args) { String statement = "one two three";
public class MyLangyage {
public static void main(String[] args) {
String statement = "one two three";
screen(statement);
}
public static void screen(String statement) {
String token[]= statement.split(" ");
for (int i = 0; i < token.length; i++) {
System.out.println(token[i]);
}
}
}
公共类MyLangyage{
公共静态void main(字符串[]args){
String语句=“一二三”;
屏幕(报表);
}
公共静态无效屏幕(字符串语句){
字符串标记[]=语句。拆分(“”);
for(int i=0;i
控制台上的结果将是:
一个
二
三
//使用扫描仪:
import java.util.Scanner;
public class MyLangyage {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String statement = scanner.next();
screen(statement);
}
public static void screen(String statement) {
String token[]= statement.split(" ");
for (int i = 0; i < token.length; i++) {
System.out.println(token[i]);
}
}
}
import java.util.Scanner;
公共级MyLangage{
公共静态void main(字符串[]args){
扫描仪=新的扫描仪(System.in);
String语句=scanner.next();
屏幕(报表);
}
公共静态无效屏幕(字符串语句){
字符串标记[]=语句。拆分(“”);
for(int i=0;i
如果我在控制台上写:
一二三
然后按enter键,结果将是:
一个可以拆分整个输入行,或者使用扫描仪一次获取一个令牌。不要两者都做
如果要从
扫描仪中提取多个单词,则必须多次使用Scanner.next()
,实际上,每个单词一次。您使用的是Scanner.next()
,它将读取下一个单词。如果你想读整行,然后分开使用