0

我正在尝试在 Java 中创建一个等效于

'Uri.IsHexDigit(char)'在 C# 中。我想检查一个字符是否在一组 char 数组中,看看它是否是正确的字符。请任何人看看我的代码,看看我做错了什么。先感谢您。

到目前为止,这是我的代码:

public boolean hexChecker(char c)
{
    String string = "0123456789abcdefABCDEF";
    char[] charArray = string.toCharArray();

    for(char ch : charArray)
    {
        if(c == ch)
        {
            System.out.println("It worked!");
            return true;
        }
        else
        {
            System.out.println("It did not work!");
            return false;
        }
    }

    return false;
}
4

2 回答 2

9

让生活变得轻松。简单地

   public boolean hexChecker(char c) {
        String string = "0123456789abcdefABCDEF";
        return string.indexOf(c) > -1;
    }
于 2013-10-04T10:48:52.523 回答
2

您可以使用正则表达式:

private final static Patter phex = Pattern.compile("[0-9A-F]+");

public boolean hexCharacter(char c) {
   return phex.matcher("" + c).matches();
}
于 2013-10-04T10:51:41.387 回答