扫码关注官方订阅号
1、为什么这里getInstance()会报错,我用的jdk1.8 难道是版本调整了,但是也应该有提示啊?2、解释一下 Integer.toHexString((0x000000ff & s[i]) | 0xffffff00).substring(6) 的用法?
欢迎选择我的课程,让我们一起见证您的进步~~
你的代码是啥,报的啥错误?下面这段代码好好的
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 位的十六进制——好绕。
0x00ff & s[i]
0xffffff00
substring(6)
能不能介绍一些segmentfault上的java大神认识一下?谢谢!
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
你的代码是啥,报的啥错误?下面这段代码好好的
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 位的十六进制——好绕。能不能介绍一些segmentfault上的java大神认识一下?谢谢!