c语言输入空行结束,java输出空行
目录
java输入空行结束。最近两次笔试都被这个问题困扰。java输入数据,空格继续,回车结束。进入普通版和升级版。
java输入空行结束
00-1010输入一个空行后如何停止输入?各种方法都试过了。下面是可以达到这个目的的代码:
public static void main(String[]args){ Scanner in=new Scanner(system . in);While(true){//第一个字符串s=in . nextline();if(s . equals())//第二个分隔符;system . out . println(s);} system . out . println(“Over Input”);}上面代码中的第一个判断条件可以用in.hasNextLine()代替,但不能是in.hasNext()。第二个判断条件可以是s.isEmpty()或者s.length==0。
我查了一下资料,发现:
next()与nextLine有以下区别:
Next()必须在结束输入前读取一个有效字符。next()方法将自动删除输入有效字符之前遇到的终止符,如空格键、Tab键或Enter键。只有在输入有效字符后,next()方法才会将下一个输入空格键、Tab键或enter键视为分隔符或终止符。
简单来说,next方法不能得到一个带空格的字符串。
nextLine()方法的终止符正好是回车键,即nextLine()方法返回回车键之前的所有字符,它可以得到一个带空格的字符串。
最近两次笔试都被这一个问题困扰
00-1010可以输入输出。附有详细的评论
导入Java . util . scanner;public sum demo { public static void main(string[]args){ system . out . println(请输入两个数字,用空格隔开,如5 5 );//获取一个扫描仪扫描system=new scanner (system.in)的输入扫描仪输入;//声明一个临时字符串变量temp来保存扫描器读取的一行;string temp=input . nextline();//先修剪temp字符串(),即去掉两边的空格。//因为有的人可能输入5个空格5个空格然后输入。//所以去掉两边的空格变成5个空格回车就符合要求了。split(“”)方法表示字符串用空格切割,返回的结果是字符串数组String[] ss=temp.trim()。拆分(“”);//解析两个字符串中的两个数,sum int num 1=integer . Parse int(ss[0]);int num 2=integer . parse int(ss[1]);int sum=num1 num2//输出结果System.out.println(输入的数是 num1 num2 ,两个数之和是: sum );//养成一个好习惯。记得关闭打开的资源。当我们打开扫描仪时,我们会关闭扫描仪input . close();}}
00-1010可以重复输入数字和输出结果,具有退出功能,
导入Java . util . scanner;public class SumTest { public static void main(String[]args){ Scanner input=new Scanner(system . in);While(true){ System.out.println(如果输入exit,则退出。输入由空格分隔的两个数字);string temp=input . nextline();if(temp.trim()。equals( exit ){ break;} String[] ss=temp.trim()。拆分(“”);int num 1=integer . parse int(ss[0]);int num 2=integer . parse int(ss[1]);int sum=num1 num2System.out.println(输入的数是 num1 num2 ,两个数之和是: sum );} input.close()。}}以上是我的亲身经历。希望能给大家一个参考,也希望大家能支持盛行的IT。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。