java - 输入双精度数据类型后 nextLine() 不起作用
问题描述
import java.util.Scanner;
public class test2 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("");
int i = scan.nextInt();
double d=scan.nextDouble();
String s=scan.nextLine();
System.out.println("String: " + s);
System.out.println("Double: " + d);
System.out.println("Int: " + i);
}
}
输入 =:
23
23
mks
输出应该是:-
String:mks
Double:23.0
Int:23
但它不接受 String 输入,只接受 double 和 Int 类型。甚至不要求我提供字符串类型的输入。所以,
输入是:
23
23
输出是:
字符串:
double:23.0
Int:23
解决方案
推荐阅读
- json - Scala Jackson Unmarshalling - 属性“config”的冲突设置器定义:com.fasterxml.jackson.databind.ObjectMapper#setConfig(1 params) vs
- coq - 如何在coq中证明StronglySorted list consing?
- php - 如何在 gmdate PHP 中将 GMT 时区更改为 GMT+7?
- c# - 如何一个接一个地运行 Specflow 测试而不是并行
- node.js - 在 JWT 的配置文件中生成和使用密钥
- spring - 将pom的profile值带入jsp
- php - 从链接标签中过滤属性,PHP中的href除外
- c++ - C++ 多索引表 - eos 持久性 API
- svg - 标准 svg 字体的字符宽度
- android - Powermock 抱怨在 2 个地方发现了 default.properties 文件