csdn_mobile 2021-09-01 19:46 采纳率: 69.2%
浏览 422
已结题

刚学Java,请问如何实现连续读入多个数据呢?

比如说用户连续输入多个数字
6 36
5 60
13 78
1 380
5 225
1 683599
该怎么读入呢?
总不可能用多个Scanner sc=new Scanner(System.in);
int variable=sc.nextInt();
解决吧。
我想自己写循环,但又看到每行数据有回车,不知道怎么下手。

  • 写回答

1条回答 默认 最新

  • 比特控 2021-09-01 19:50
    关注

    方法1.

    Scanner s=new Scanner(System.in);
    int a=s.nextInt();
    int b=s.nextInt();
    

    输入时a b之间加空格就行,
    s.nextInt()的意思就是 获取键盘的输入:如果执行到了这一行,那么程序会暂停,等待你在控制台输入,然后把输入的整数值赋给整形变量

    方法2.

    也可以使用Scanner的nextLine获取一整行,然后再用split方法切割为单个int,用的时候强转就好了。

    String str1 = sc.nextLine();
    String[] intstr = str.split();
    

    处理多行:

    多行的话加一个do-while语句包裹起来。while中判断输入的变量是否为非法值即可。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月10日
  • 已采纳回答 9月2日
  • 创建了问题 9月1日

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作