java输入空行结束问题怎么解决-亚博电竞手机版
开发技术
2022年05月19日 10:38
0
java输入空行结束问题怎么解决
这篇文章主要介绍“java输入空行结束问题怎么解决”,在日常操作中,相信很多人在java输入空行结束问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java输入空行结束问题怎么解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
java输入空行结束
最近两次笔试都被这一个问题困扰
如何在输入空行后停止输入,尝试了各种方法,以下是可以实现该目的的代码:
publicstaticvoidmain(string[]args){scannerin=newscanner(system.in);while(true){//第一处strings=in.nextline();if(s.equals(""))//第二处break;system.out.println(s);}system.out.println("overinput");}
以上代码第一处判断条件可以替换为in.hasnextline(),但是不可以是in.hasnext().第二处判断条件可以是s.isempty(),也可以是s.length == 0。
我查找资料发现:
next()与nextline有以下区别:
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、tab键或enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、tab键或enter键等视为分隔符或结束符。
简单地说,next方法不能得到带空格的字符串。
而nextline()方法的结束符只是enter键,即nextline()方法返回的是enter键之前的所有字符,它是可以得到带空格的字符串的。
java输入数据,空格继续,回车结束输入
普通版
可输入,可输出。带详细的注释
importjava.util.scanner;publicclasssumdemo{publicstaticvoidmain(string[]args){system.out.println("请输入两个数字,中间用空格隔开,例如55");//得到一个扫描器,用来扫描系统的输入scannerinput=newscanner(system.in);//申明一个临时的字符串变量temp,用来保存扫描器读取的一行;stringtemp=input.nextline();//temp字符串首先trim()一下,就是去掉两边的空白,//因为有的人可能输入的是空格5空格5空格回车。.//所以去掉两边的空格变成5空格5回车就符合要求了//split("")方法表示,用空格去切割字符串,返回的结果是一个字符串数组string[]ss=temp.trim().split("");//从两个字符串中解析得到两个数字,并求和intnum1=integer.parseint(ss[0]);intnum2=integer.parseint(ss[1]);intsum=num1 num2;//输出结果system.out.println("输入的数字是" num1 "" num2 "两数的和是:" sum);//养成良好的习惯,打开了的资源要记得关闭,我们打开了扫描器,就要关闭扫描器input.close();}}
升级版
可重复输入数字,重复输出结果,并带退出功能、
importjava.util.scanner;publicclasssumtest{publicstaticvoidmain(string[]args){scannerinput=newscanner(system.in);while(true){system.out.println("如果输入exit,那么退出。输入两个数字,用空格隔开");stringtemp=input.nextline();if(temp.trim().equals("exit")){break;}string[]ss=temp.trim().split("");intnum1=integer.parseint(ss[0]);intnum2=integer.parseint(ss[1]);intsum=num1 num2;system.out.println("输入的数字是" num1 "" num2 "两数的和是:" sum);}input.close();}}
到此,关于“java输入空行结束问题怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!
展开全文