Answers
你的代码是啥,报的啥错误?下面这段代码好好的
import java.security.*;
public class Test {
public static void main(String[] args) throws Exception {
MessageDigest md5 = MessageDigest.getInstance("md5");
System.out.println(md5);
}
}
-
MessageDigest.getInstance() 是静态方法,这个 @tl6h13 已经说了
-
0x00ff & s[i]
是取 s[i] 的低 8 位,之后再与0xffffff00
相或,结果是前面 6 个 f(24位都是1),后面 8 位是 s[i] 的低 8 位。转换成 Hex 之后一共是 8 个字符,substring(6)
是从第6个开始取,也就是取到后面2位,也就是 s[i] 低 8 位的十六进制——好绕。
胡来的左手
answered 9 years, 3 months ago