Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.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
Java MD5-类型字符串的方法未定义_Java - Fatal编程技术网

Java MD5-类型字符串的方法未定义

Java MD5-类型字符串的方法未定义,java,Java,我有一个方法,它将字符串作为参数,并将字符串的MD5值作为字符串返回。但是,当我使用该方法时,我得到“Th method md5()对于类型String是未定义的”。我可能太累了,看到我犯了一个错误,你能帮我吗 public static String md5(String s) { try { MessageDigest m = MessageDigest.getInstance("MD5"); m.reset();

我有一个方法,它将字符串作为参数,并将字符串的MD5值作为字符串返回。但是,当我使用该方法时,我得到“Th method md5()对于类型String是未定义的”。我可能太累了,看到我犯了一个错误,你能帮我吗

public static String md5(String s) {
        try {
            MessageDigest m = MessageDigest.getInstance("MD5");
            m.reset();
            m.update(s.getBytes());
            byte[] digest = m.digest();
            BigInteger bigInt = new BigInteger(1, digest);
            return bigInt.toString(16);
        } catch (Exception e) {
            return null;
        }
    }

public void hashing() {
    int counter = 0;
    StringBuilder sb = new StringBuilder();
    for (int i=0; i<slovo.length(); i++) {
        if (slovo.charAt(i)=='_') {
            sb.append(characters.charAt(array[counter]));
            counter++;
        }else {
            sb.append(input.charAt(i));
        }
    }
    if (sb.toString().md5()==hash) { //this is the line which is producing the error

    }
    System.out.println(sb.toString());
}
公共静态字符串md5(字符串s){
试一试{
MessageDigest m=MessageDigest.getInstance(“MD5”);
m、 重置();
m、 更新(s.getBytes());
字节[]摘要=m.摘要();
biginger bigInt=新的biginger(1,摘要);
返回bigInt.toString(16);
}捕获(例外e){
返回null;
}
}
公共空散列(){
int计数器=0;
StringBuilder sb=新的StringBuilder();

对于(int i=0;i字符串对象没有md5()方法,md5只接受一个参数。
你是说
md5(sb.toString())

错误在于
String
没有
md5()
方法。另外,你必须将字符串与
equals()
进行比较,而不是
=/code>是的,刚刚注意到了。睡眠剥夺正在成为一个标志。谢谢!