如何使用Scanner.nextLine()

时间:2014-04-22 12:38:37

标签: java java.util.scanner

我使用此代码在String变量n中输入内容,在输入要求后,我不希望程序打印我输入的内容。

代码:

String n = Scanner.nextLine();

我觉得你是在Scanner之后输入的东西。 ,但我不知道它是什么。

EDITED: 谢谢你的回答,但我不知道如何关闭扫描仪。 这是程序......:

我的节目:

import java.util.Scanner;
public class A{
    public static void main(String args[]){
        String n;
        Scanner bananas=new Scanner(System.in); 
        System.out.println("First Digit: ");
        n=bananas.nextLine();
    }
}

当我运行程序时,屏幕上会出现:" First Digit:", 然后打字,让我说我键入" apple&#34 ;,字符串n将等于 " apple",没关系,这就是我想要的,我不喜欢的是 程序在屏幕上打印字符串n,我不想要程序 要做到这一点,就会发生这种情况:

第一位: 苹果

我想要的是我打印的程序只是: "第一个数字:",没有显示我键入的内容,只需保留它。

感谢。

2 个答案:

答案 0 :(得分:1)

首先,您必须实例化扫描仪,如下所示:

Scanner scanner = new Scanner(System.in);  //if you want to read from the console

然后,您可以收到您的意见。

String n = scanner.nextLine();

请确保在您不再需要时关闭扫描仪:

scanner.close();

答案 1 :(得分:1)

没有什么比这更棘手的了。你可以像下面这样做,你的变量仍然可以保持你想要的值。

import java.util.Scanner;
public class A{
    public static void main(String args[]){
        String n;
        Scanner bananas=new Scanner(System.in); 
        System.out.println("First Digit: ");
        n=bananas.nextLine();        // once you are done with input
        bananas.close();
    }
}

即使您没有关闭扫描程序,就代码执行而言,它也不会产生任何影响。只会警告你班级中某些地方会出现哪些不会影响你的代码。但是一旦完成扫描,最好关闭扫描仪。这是一个很好的做法。