扫描仪停止工作和 Println 问题,为什么?

Scanner Stops Working and Println Problems, Why?

我正在为这个项目使用 eclipse。我试过在命令提示符下编译,但同样的问题发生了。扫描仪工作直到我到达 "phone" 然后它似乎只是跳过用户输入并在同一行上打印其他所有内容。

我希望将用户输入存储到分配的变量中,然后在不同的行中打印出来。

我添加了 sc.close; 以查看是否有帮助,但没有帮助。一些帮助将不胜感激。我的变量 "address" 也没有完全打印出来。 我想我可能没有正确使用扫描仪?

import java.util.Scanner; 

public class ContactDisplay {

public static void main(String[] args) {

    //Write a program that displays your name, address, and telephone number;
    //create scanner
    Scanner sc = new Scanner(System.in);
    //Creates the variables; 
    String name; 
    String address; 
    String phone; 

    //Asks for name
    System.out.print("What is your name? ");
    //stores the name
    name = sc.next(); 
    //Asks and stores the address
    System.out.print("What is your address? ");
    address = sc.next(); 
    //Asks and stores the phone number 
    //PROBLEM IS BELOW
    System.out.print("What is your phone number? ");
    phone = sc.next(); 


    //Prints everything out
    System.out.println(name);
    System.out.println(address);
    System.out.println(phone);

}

}

截图如下:

您应该使用 'sc.nextLine()' 来扫描字符串值,您应该使用 'sc.nextInt' 来扫描整数值。如果您在键入一堆代码时按下 ctrl 和 space 键,它会向您显示您可能想要编写的内容。