如果用户在textfield中输入了多个小数点,我想创建一条错误消息。我只能检查它是否有1.但我不知道如果有多少。
它不完全是问题所要求但肯定会处理多个点和更多。我们的想法是从Textfield获取输入为String,然后将该字符串转换为double。如果它向异常提示用户抛出给定输入无效并要求再次输入该值。这将处理您的所有输入数据验证。代码就是这样的,
String inputNum = myTextField.getText();
double actualNum = 0.0;
try {
actualNum = Double.parseDouble(inputNum);
} catch (NumberFormatException ne){
// Prompt User
}
String text = myTextField.getText();
String[] number = text.split("\\.");
这段简单的代码为您提供所需的一切。数组中元素的数量 - 1,是char'的次数。出现在您的输入中。
编辑:如果用户可能输入具有几个.
字符的值,例如:"5....."
,则需要使用split
方法的重载版本。
split(myRegex)
将检索匹配之间的值,如果有的话,
split(myRegex, -1)
无论比赛之间是否有某些价值,他们都会得到他们。