我的程序将作为输入:
1 T T T T T F T T F F
Bobb, Bill 123456789 T T T T T F T T F F
Lou, Mary 974387643 F T T T T F T T F F
Bobb, Sam 213458679 F T F T f t 6 T F f
Bobb, Joe 315274986 t t t t t f t t f f
ZZZZ
代码:
BufferedReader br = new BufferedReader (new InputStreamReader (System.in));
StringTokenizer st = new StringTokenizer (br.readLine ());
String key = st.nextToken ();
如何将第一行作为单个字符串读取?
我尝试过使用字符串标记符,但只抓取1
并删除其余部分。任何帮助将不胜感激。
答案 0 :(得分:2)
请使用此功能。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line;
while((line = br.readLine())!=null){
// you can stop taking input when input line is empty
if(line.isEmpty()){
break;
}
System.out.println(line); // printing the input line
}
br.close();
请参阅live demo
答案 1 :(得分:0)
所有参数都存储在args数组中。
StringBuilder input = new StringBuilder();
for (int i = 0; i < args.length; i++) {
input.append(args[i]+" ");
}
答案 2 :(得分:0)
您可能希望使用try-with-resources来减少行数。此外,这样做时你不能忘记关闭流。
基于Wasi Ahmad的回答
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException{
String line;
try(BufferedReader br = new BufferedReader(new InputStreamReader(System.in))){
while((line = br.readLine()) != null){
if(line.isEmpty()){ // Stop reading
break;
}
// Print line
System.out.println(line);
}
}
}
}