如何检查TextField中输入值的数据类型?我在Stack Overflow上找到了与此查询相关的其他问题,但这些问题与其他语言有关,如:C#,Swift等。
我不想将String的值解析为整数,反之亦然。我想识别jTextField1包含的值的数据类型。
通常在java中,jTextField1.getText();返回Java中的String值。我想要的是:
有没有办法做到这一点?
public static void main(String...strings){
for (String string : strings) {
try{
System.out.println(Integer.parseInt("hello"));
System.out.println(Integer.parseInt("345"));
//similarly can be done for other types
}catch(NumberFormatException exception){
System.out.println(exception);
}
}
你必须处理numberFormatException
常规 - 字段的数据类型始终为String ....
Integer.parse
或Double.parse
将是这里最有用的工具,但如果您不想使用它,您可以单独检查每个字符,如果它的数字Character.isDigit
。
如果不是:字符串
如果所有都没有分隔符 - > int
否则 - >双
但正如所说 - 我会使用现有的api方法 - 因为最后,解析是解析