java输入时如何通过回车(enter)来结束输入(java怎么结束输入)

网友投稿 551 2022-07-29


目录输入时通过回车(enCAsmOter)来结束输入解决办法java回车结束输入一行发现该解法

输入时通过回车(enter)来结束输入

在编写java程序的时候,我们想通过输入回车来完成这一行的输入,这是一个非常常见的问题,但是如果我们是用Scanner ,然后通过nextInt()方法调用的时候,不会停止输入,回打出一个空行,然后等着你继续输入下一个数字。

解决办法

我们可以设置两个Scanner 第一个以行为单位读取数据,这样就相当于是用回车(enter)当作结束符,

然后把读取到的字符串传入第二个Scanner, 然后在进行处理

ArrayList arr = new ArrayList() ;

System.out.println("Enter a space separated list of numbers:");

Scanner in = new Scanner(System.in);

String line = in.nextLine();

Scanner in2 = new Scanner(line);

while(in2.hasNextInt()){

arr.add(in2.nextInt());

}

System.out.println("The numbers were:"+arr.toString());

只需要把nextInt 或者hasnextint等函数改成你所需要的函数名就可以实现 不同的输入,但是是以回车(enter)为结尾了。

java回车结束输入一行

题目

在论坛找到这种方法:

Scanner s =new Scanner(System.in);

String str="";

do {

str=s.nextLine();

if(s.hasNextLine())

break;

}while(true);

System.out.println(str);

经实践,此法不通:

需要两个回车才能结束输入。

发现该解法

Scanner s= new Scanner(System.in);

String str=s.nextLine();

Scanner st=new Scanner(str);

ArrayList a =new ArrayList();

while(st.hasNextInt())

a.add(st.nextInt());

System.out.println(a);

将字符串作为输入流,空格为间隔符:

源码:

this调用下面构造函数:


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解SpringBoot定时任务功能(springboot使用定时任务)
下一篇:关于Scanner对象的输入结束标记问题(scanner input =new scanner())
相关文章

 发表评论

暂时没有评论,来抢沙发吧~