文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

java输入空行结束问题怎么解决

2023-06-30 15:12

关注

这篇文章主要介绍“java输入空行结束问题怎么解决”,在日常操作中,相信很多人在java输入空行结束问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java输入空行结束问题怎么解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

java输入空行结束

最近两次笔试都被这一个问题困扰

如何在输入空行后停止输入,尝试了各种方法,以下是可以实现该目的的代码:

public static void main(String[] args) {Scanner in = new Scanner(System.in);while(true){//第一处String s = in.nextLine();if(s.equals(""))//第二处break;System.out.println(s);}System.out.println("Over Input");}

以上代码第一处判断条件可以替换为in.hasNextLine(),但是不可以是in.hasNext().第二处判断条件可以是s.isEmpty(),也可以是s.length == 0。

我查找资料发现:

next()与nextLine有以下区别:

next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。

简单地说,next方法不能得到带空格的字符串。

而nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。

java输入数据,空格继续,回车结束输入

普通版

可输入,可输出。带详细的注释

import java.util.Scanner;public class SumDemo {    public static void main(String[] args) {        System.out.println("请输入两个数字,中间用空格隔开,例如5 5");        //得到一个扫描器,用来扫描 系统的输入        Scanner input = new Scanner(System.in);        //申明一个临时的字符串变量temp,用来保存 扫描器读取的一行;        String temp = input.nextLine();        //temp字符串首先trim()一下,就是去掉两边的空白,        //因为有的人可能输入的是 空格5空格5空格回车。.        //所以去掉两边的空格变成 5空格5回车 就符合要求了        //split(" ")方法表示,用空格去切割字符串,返回的结果是一个字符串数组        String[] ss = temp.trim().split(" ");        //从两个字符串中解析得到两个数字,并求和        int num1 = Integer.parseInt(ss[0]);        int num2 = Integer.parseInt(ss[1]);        int sum = num1+num2;        //输出结果        System.out.println("输入的数字是"+num1+" "+num2+"两数的和是:"+sum);        //养成良好的习惯,打开了的资源要记得关闭,我们打开了扫描器,就要关闭扫描器        input.close();    }}

升级版

可重复输入数字,重复输出结果,并带退出功能、

import 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().split(" ");            int num1 = Integer.parseInt(ss[0]);            int num2 = Integer.parseInt(ss[1]);            int sum = num1+num2;            System.out.println("输入的数字是"+num1+" "+num2+"两数的和是:"+sum);        }        input.close();    }}

到此,关于“java输入空行结束问题怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯