Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
I';我正在用java测试一个字符串,看看它是否包含一个数字_Java_String_Char - Fatal编程技术网

I';我正在用java测试一个字符串,看看它是否包含一个数字

I';我正在用java测试一个字符串,看看它是否包含一个数字,java,string,char,Java,String,Char,嗨,有人能给我一些指导吗。我试图测试一个字符串,看看它是否有一个数字,并根据结果将一个变量设置为true或false。这就是我到目前为止所做的: public static void main (String [] args) { boolean hasDigit = false; String passCode = "abc"; int valid = 0; if (Character.isdigit(passCode)) { hasDigit

嗨,有人能给我一些指导吗。我试图测试一个字符串,看看它是否有一个数字,并根据结果将一个变量设置为true或false。这就是我到目前为止所做的:

public static void main (String [] args) {
    boolean hasDigit = false;
    String passCode = "abc";
    int valid = 0;

    if (Character.isdigit(passCode)) {
        hasDigit = true;
    } else {
        hasDigit = false;
    }
任何帮助都将不胜感激


谢谢。

在字符串中循环并分别测试每个字符。找到数字字符后,请中断循环:

boolean hasDigit = false;
String passCode = "abc";
for (int i = 0; i < passCode.length(); i++) {
    if(Character.isDigit(passCode.charAt(i))) {
        hasDigit = true;
        break;
    }
}
boolean hasDigit=false;
字符串passCode=“abc”;
对于(int i=0;i
我认为更好的解决方案是编写一个regex测试,查看字符串是否有[0-9]之间的数字。这肯定会给你想要的结果。此外,您还可以轻松更新regex,以检查所提供字符串中的其他条件

使用正则表达式:

if (passCode.matches(".*[0-9]+.*")) {...}
在循环中使用Character.isDigit()函数检查字符串中的每个字符是否为数字

公共类测试号{

/**
 * @param args
 */
public static void main(String[] args) {
    // TODO Auto-generated method stub

            String s="abc1";

            boolean isDigit = false;


            for(int i=0;i<s.length();i++)
            {
                if(Character.isDigit(s.charAt(i))){


                        isDigit=true;
                        break;
                }

                else
                    isDigit=false;


            }

            System.out.println(isDigit);






}
/**
*@param args
*/
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
字符串s=“abc1”;
布尔值isDigit=false;

对于(int i=0;i测试此代码,我希望您能得到答案。代码转储不应被用作问题或答案。如果您有答案要分享,请解释。如果您只是转储代码,您的答案在将来对任何人都没有帮助。