天灵狐 2014-08-09 08:07 采纳率: 100%
浏览 17364
已采纳

JAVA,当键盘输入多行字符串时,如何停止输入。

    Scanner in=new Scanner(System.in);
    String[] input = new String[26];
    for(int i = 0; input[i] != "end"; i++){
        input[i] = in.next();
    }
    in.close();

想要达到的效果:执行程序后由键盘输入:
thisisthefistline
thisisthesecondline
end
结束输入,进入下一行程序。

但是事实上,即使输入了end,按下回车后,依然可以继续输入字符串和回车。
想要知道,如果我需要使这个代码停下来执行下一段代码,在for中应该用什么替换“input[i] != "end"”,以及相应的是如何停止键盘录入的?

  • 写回答

3条回答 默认 最新

  • u010334733 2014-08-14 10:18
    关注

    字符串不能用“=”、“!=”之类的比较。还有用for语句他是先判断后执行语句。下面代码可以实现:enter code here

            Scanner in = new Scanner(System.in);
            String[] input = new String[26];
            int i = 0;
            do {
                input[i] = in.next();
                i++;
            } while (!input[i - 1] .equals("end") );
            in.close();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥20 为什么我写出来的绘图程序是这样的,有没有lao哥改一下
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号