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