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

问题描述

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""”,以及相应的是如何停止键盘录入的?

解决方案

String 数组长度已经定了,暂停有错误,考虑用StringBuffier或者StringBudder

解决方案二:
字符串不能用“=”、“!=”之类的比较。还有用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();
时间: 2024-09-12 00:17:25

scanner-JAVA,当键盘输入多行字符串时,如何停止输入。的相关文章

C语言编程中统计输入的行数以及单词个数的方法_C 语言

统计输入的行数 标准库保证输入文本流以行序列的形式出现,每一行均以换行符结束.因此,统计行数等价于统计换行符的个数. #include <stdio.h> /* count lines in input */ main() { int c, nl; nl = 0; while ((c = getchar()) != EOF) if (c == '\n') ++nl; printf("%d\n", nl); } 在该程序中,while 循环语句的循环体是一个 if 语句,它控

PowerShell中定义多行字符串变量的方法_PowerShell

本文介绍PowerShell中如何定义一个跨多行的字符串变量,定义多行字符串时使用@"开始,使用"@结束. 有没有遇到这样一种情况,我们想创建一个变量来保存一个跨行的字符串. 是不是对怎么输入很头疼啊?其它编程语言有没有办法我不知道,但在PowerShell中,有一个很简单的办法,那就是使用@字符. 举例如下: 复制代码 代码如下: $str = @" 字符串的第1行 字符串的第2行 -- 字符串的第n行 "@ 注意在"@""之后,不要

如何在一个单元格中输入多行数据

有时,我们经常需要在一个Excel单元格中输入多行数据.您可不要以为这个问题很简单,其实,当我们准备在单元格中换行时,只要按下回车键Excel便肯定转到下一个单元格了.那么如何做才能在同一个单元格中输入多行数据呢?笔者这里就给大家介绍两个小技巧. [注] 本文所述技巧已于Excel 2003下测试通过 方法一. 临时设置法 如果我们只是临时需要在一个单元格中输入多行数据,那么就可以在输入完单元格内容的第一行后,按住Alt键再打回车,这时,继续输入的字符便自动出现在了当前单元格的下方了. 方法二.

java多行输入问题-求助:关于多行输入:输入多行后结束(不用自己定义的结束条件,如下描述)

问题描述 求助:关于多行输入:输入多行后结束(不用自己定义的结束条件,如下描述) 看起来很简单,可是实际去做没找到具体的方法,网上查了很多,不是我想要的,求大神指定一下: 一次从键盘输入多行后结束 如 12 12 12 321 2131 321 123 然后输入结束,不加结束控制字符,如输入一行为end然后结束等,也不用最后一样输入后输入一个空行作为结束标志, 如 123 12321 结束. 另外问一句,当我们按enter键,java读入的是n,还是r,还是rn,我做了一下实验(读入,然后用eq

java源码-我怎么才能让我连续输入多行数然后以-1结束输入

问题描述 我怎么才能让我连续输入多行数然后以-1结束输入 我想实现输入多行数字,然后输入-1结束开始输出是不是完全平方数,怎么改? 解决方案 Scanner sc = new Scanner(System.in); String[] input = new String[26]; int i = 0; do { input[i] = sc.next(); i++; } while (!input[i - 1] .equals("-1") ); in.close(); 解决方案二: wh

java-模拟键盘输入向其他应用程序编辑框输入字符串

问题描述 模拟键盘输入向其他应用程序编辑框输入字符串 JAVA 程序中模拟键盘输入向其他应用程序(SAP)编辑框输入字符 要有源码 解决方案 不知道你具体要做什么,但是JAVA 程序中模拟键盘输入的例子代码你可以看看这文章http://blog.csdn.net/yu555666/article/details/1634564 解决方案二: 参考com.jniwrapper.win32.FunctionName 你的需求应该是调用WinApi函数,比如GetWindow,FindWindow,S

c语言 字符-从键盘输入任意一个字符串和一个字符,要求从该字符串中删除所有该字符。

问题描述 从键盘输入任意一个字符串和一个字符,要求从该字符串中删除所有该字符. 题目要求 Problem Description 从键盘输入任意一个字符串和一个字符,要求从该字符串中删除所有该字符. Input 输入有多组测试数据. 每组两行,第一行是字符串(字符串至少还有一个字符,不多于100个),第二行是一个字符 Output 每组输出一行,删除了所有应删除字符后的字符串 Sample Input ABCDE E ASD Dfg fhd D Sample Output ABCD AS fg

c语言-C填空题:从键盘输入一个十六进制字符串,将其转换为十进制数

问题描述 C填空题:从键盘输入一个十六进制字符串,将其转换为十进制数 #include int change(char *s) { int sum=0; while(*s) { if(*s>='a'&&*s<='z') sum=(); else if(*s>='A'&&*s<='Z') sum=(); else if(*s>='0'&&*s<='9') sum=(); (); } return sum; } void ma

Java 从键盘中输入年份与月份,输出该月的日历

问题描述 Java 从键盘中输入年份与月份,输出该月的日历 如:2015年4月 星期日 星期一 星期二 星期三 星期四 星期五 星期六 1 2 3 4 ............. 解决方案 http://bbs.csdn.net/topics/370043525 解决方案二: 主要是日期和星期的对应关系不好找吗?可以把电脑的日期设置成输入的月份的第一天,再取这一天的时间,时间结构里就有星期,再一天一天往后数. 说实话我是在小说里看到的这个方法... 解决方案三: <input type="