Java 识别字符串有数字
这是我的输入验证程序:Java 识别字符串有数字,java,Java,这是我的输入验证程序: public class MyInputVerifier extends InputVerifier { @Override public boolean verify(JComponent input) { String text = ((JTextField) input).getText().trim() if (text.isEmpty() || text.length() == 0) return false; // How verif
public class MyInputVerifier extends InputVerifier {
@Override
public boolean verify(JComponent input) {
String text = ((JTextField) input).getText().trim()
if (text.isEmpty() || text.length() == 0) return false;
// How verifier that if text contains digit, return false?
return true;
}
我需要识别当文本
包含数字时,它会向我返回false
是否有任何方法或我应该使用旧方法?(用于循环)这是检查
文本是否包含数字的一种方法:
boolean containsADigit = text.matches(".*\\d.*");
如果要检查所有字符是否都是数字,则仍可以使用正则表达式,或尝试将字符串解析为整数:
boolean isDigitsOnly = text.matches("\\d*");
你想找一条更快的路吗
private boolean hasOnlyDigits(String str) {
for(int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c < '0' || c > '9') {
return false;
}
}
return true;
}
private boolean hasOnlyDigits(字符串str){
对于(int i=0;i'9'){
返回false;
}
}
返回true;
}
只使用非常基本的东西:
public boolean containsDigit(String str) {
int n = str.size();
for(int i=1, i<n, ++i) {
if(str.charAt(i).isDigit()) {return true;}
}
return false;
}
public boolean containsDigit(字符串str){
int n=str.size();
对于(int i=1,iYou可以根据正则表达式验证它。Integer.parseInt()
??@luigimendoza您的意思是什么?@Sajjad有很多关于正则表达式的文献。Java有方法。不客气。它显然不是一个单行解决方案,但甚至没有使用任何接近高级的东西。