java - 为什么我们无法在下面的代码中输入字符串 s1 ?

标签 java string java.util.scanner

import java.util.*;
public class MovieInfo
{
public static void main(String[] args)
{
    Scanner in = new Scanner(System.in);
    System.out.println("Enter the name of the film");
    String name = in.nextLine();
    System.out.println("Enter the film budget");
    int bud = in.nextInt();
    System.out.println("Enter the running time");
    double time = in.nextDouble();
    System.out.println("Enter the film production house");
    String s1 = in.nextLine(); 
    System.out.println("Film being screened : "+name);
    System.out.println("Budget "+bud+" cores");
    System.out.println("Running time "+time+" hours");
    System.out.println("Production : "+s1);
}
}

在上述程序的输出中,它不接受字符串 s1 的输入。 我如何解决它? 任何帮助将不胜感激。

最佳答案

尝试添加以下附加行:

in.nextLine();

该行之后:

double time = in.nextDouble();

使用换行符(当您使用Enter键接受输入double时创建),该字符未通过使用.nextDouble() 调用。

<小时/>

请引用链接that question ,由 LenosV 提供,以获取有关 Scanner 行为原因的详细信息。

关于java - 为什么我们无法在下面的代码中输入字符串 s1 ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49530164/

相关文章:

java - 错误用户输入Java的异常处理

Java 扫描仪输入仅接受数字

java - 使用 Scanner 测试一行是否是注释

java - 未定义 [service.NewsServiceImpl] 类型的合格 bean

java - 以编程方式模拟从一个 Android 应用程序到另一个应用程序的用户输入

python - 如何使用python将各种字符串和数据连接在一起

c++ - C/C++ isspace() 跳过多字节字符串字符

python - 编码/解码有什么区别?

java - HBase内部是如何解析 "hbase shell command"的?

java - 关于哈希的困惑很少