Java 在SmartGwt中创建验证器以检查字符串是否为整数
我有一个Java 在SmartGwt中创建验证器以检查字符串是否为整数,java,smartgwt,Java,Smartgwt,我有一个TextItem,我想在上面设置一个验证器,以便它检查输入是否仅为整数 TextItem textItem = new TextItem(); textItem.setValidator(myValidator) 我应该如何创建我的myValidator来检查这一点?我有: myValidatorcv = new CustomValidator() { @Override protected boolean condition(Object value
TextItem
,我想在上面设置一个验证器
,以便它检查输入是否仅为整数
TextItem textItem = new TextItem();
textItem.setValidator(myValidator)
我应该如何创建我的myValidator
来检查这一点?我有:
myValidatorcv = new CustomValidator() {
@Override
protected boolean condition(Object value) {
if (Integer.parseInt(value);){
return true;
}else
return false;
}
}
};
这是最好的方法吗?我还需要捕获验证器中的数字格式异常吗
这是最好的方法吗
可能吧。任何时候,只要您能够利用框架的内置功能,这通常就是一个好的解决方案的指标。
有些人可能会说,由于处理异常的成本,异常驱动编程不是最好的方法,但这取决于您
我还需要捕获验证器中的数字格式异常吗
是的,这就是你知道它是否失败的方式
myValidatorcv = new CustomValidator() {
@Override
protected boolean condition(Object value) {
try {
Integer.parseInt(value.toString());
return true;
} catch (NumberFormatException) {
return false;
}
}
};
我并不完全熟悉这个框架,但是如果您可以利用泛型来确保您正在验证的对象是
整数
或字符串
,而不是对象
,那就更好了。只需使用IntegerRangeValidator