gpt4 book ai didi

java - 如何验证用户在java中输入的数据

转载 作者:行者123 更新时间:2023-12-01 16:13:09 26 4
gpt4 key购买 nike

我正在编写一个程序,其中用户应该输入 double 值,但我想在用户输入字符串值时再次提示用户。

这是我到目前为止的代码:

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double purchaseAmount = 0;
if (input.hasNext("mp")) {
do {
System.out.println("Enter your loan amount: ");
purchaseAmount = input.next();
} while(!input.hasNextDouble());
}
}

最佳答案

当您用 Java 提示用户时(假设您使用 System.in 或 JTextField),您从用户输入中读取的内容是文本。

如果您想将文本转换为 double 型,有多种方法,但您可以使用:

do {
String promptValue = prompt();
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(16); // maximum for double
Number num = nf.parse(promptValue):
} while (null == num);

还请注意,您可以逐个字符询问并逐步解析,这样您就不需要再次提示,而是丢弃任何不匹配的内容。这在 Swing 中效果很好,或者您可以使用 jline3如果你真的想变得复杂。

要了解如何逐步解析,请查看:https://docs.oracle.com/javase/7/docs/api/java/text/NumberFormat.html

关于java - 如何验证用户在java中输入的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62482012/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com