基本上我试图通过String
课程输入Scanner
作为输入。
public class test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String line = new String();
for(int t=0;t<10;t++)
{
if(sc.hasNextLine()) line = sc.nextLine();
System.out.println(line);
}
}
}
使用输入
ama
asd
asd
asd
fds
fdgd
asd
ghfg
dfs
ghfh
我注意到当我在控制台上逐个写入输入时,我得到了正确的输出。但是当我将输入粘贴在一起时,我没有得到最后的输出。
如何克服这种情况。
它基本上需要输入然后它会给出第10个输入的输出。
注意:这与codechef的问题有关。输入将完全给出,而不是一个一个地输入。
答案 0 :(得分:0)
您可以告诉扫描仪使用分隔符。但请注意,当分隔符在其后面出现时,您只能获得下一个数据块。这就是为什么你没有得到最后的输出。
所以当你使用......
Scanner sc = new Scanner(System.in);
sc.useDelimiter(" ");
String line = new String();
for(int t=0;t<10;t++){
if(sc.hasNext()) line = sc.next();
System.out.println(line);
}
... 一个输入"ama asd asd asd fds fdgd asd fghfg dfs ghfh "
(注意结尾处的空格),它应该有效。