摘要 - java.sercurity MessageDigest.getInstance("MD5")报错!
天蓬老师
天蓬老师 2017-04-17 15:05:18
0
2
372

1、为什么这里getInstance()会报错,我用的jdk1.8 难道是版本调整了,但是也应该有提示啊?
2、解释一下 Integer.toHexString((0x000000ff & s[i]) | 0xffffff00).substring(6) 的用法?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

reply all(2)
伊谢尔伦

你的代码是啥,报的啥错误?下面这段代码好好的

import java.security.*;

public class Test {
    public static void main(String[] args) throws Exception {
        MessageDigest md5 = MessageDigest.getInstance("md5");
        System.out.println(md5);
    }
}
  1. MessageDigest.getInstance() 是静态方法,这个 @tl6h13 已经说了

  2. 0x00ff & s[i] 是取 s[i] 的低 8 位,之后再与 0xffffff00 相或,结果是前面 6 个 f(24位都是1),后面 8 位是 s[i] 的低 8 位。转换成 Hex 之后一共是 8 个字符,substring(6) 是从第6个开始取,也就是取到后面2位,也就是 s[i] 低 8 位的十六进制——好绕。

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!