如何捕获回车键,使用扫描仪作为控制台输入?

时间:2014-04-21 09:15:04

标签: java arraylist java.util.scanner

我想在控制台中捕获输入字符。我正在输入2个字符串。

案例1. removestudent(按Enter键)从阵列列表中删除所有学生。

案例2. removestudent student1从数组列表中删除students1。

Scanner in=new Scanner();

type_op=in.next();

param=in.next();

if (type_op.equals("removestudent"))
{

    //Calling remove student function and passing param over here.

}

现在案例2工作正常。但是,对于案例1,我希望当用户按Enter键时,param值为null。然后我将param作为null值传递给我的remove函数并删除数组列表中的所有学生。

list1.clear();

请帮助我知道如何获得此输入密钥。

2 个答案:

答案 0 :(得分:2)

您可以读取行,如果行为空白,您可以假设它是输入密钥..如下面的代码..

Scanner scanner = new Scanner(System.in);
String readString = scanner.nextLine();
System.out.println(readString);
if (readString.equals(""))
    System.out.println("Enter Key pressed.");
if (scanner.hasNextLine())
    readString = scanner.nextLine();
else
    readString = null;

答案 1 :(得分:1)

我认为这会对你有帮助

Scanner input= new Scanner(System.in);
String readString = input.nextLine();
while(readString!=null) {
    System.out.println(readString);
    if (readString.equals(""))
        System.out.println("Read Enter Key.");
    if (input.hasNextLine())
        readString = input.nextLine();
    else
        readString = null;
}