![]() |
1
2
|
![]() |
2
6
这与你所使用的语言无关。你只需要理解/意识到它是如何以一种语言不可知的方式在“蒙面之下”工作的。你必须明白你所做的 (字节数组)以及 希望 (十六进制字符串)。编程语言只是一种 以达到预期的效果。您只需在google上搜索“功能需求”以及您想要用来实现需求的编程语言。例如 convert byte array to hex string in java ".
也就是说,您找到的代码示例是错误的。你应该确定
每个
循环中的字节,并测试它是否小于
更新
@extraneon
,使用
|
![]() |
3
2
MessageDigests计算某物的字节数组,即通常看到的字符串(例如
在您发布的代码中,字节数组被更改为整数(在本例中是BigInteger,因为它非常大),然后转换为十六进制以打印为字符串。 摘要计算的字节数组表示一个数字(根据 http://en.wikipedia.org/wiki/MD5 |
![]() |
4
2
|
![]() |
5
1
虽然我担心我没有使用Java来处理MD5哈希的经验,但我可以推荐 Sun's Java Tutorials 作为学习Java的绝佳资源。他们学习了大部分的语言,在我学习Java的时候帮了我很大的忙。 另外,你也可以四处看看其他问同样问题的帖子,看看有什么建议出现在那里。 |
![]() |
6
1
原因是什么
使用:
数组,而不是引用地址。 |
![]() |
7
0
|
![]() |
8
0
我也是一个开发新手。对于当前的问题,我建议
"
|
![]() |
9
0
如果您将所有内容都转储到main中,那么您就不是在编写Java。 在这种规模的程序中,main()应该做一件事:创建一个MD5Hasher对象,然后对其调用一些方法。您应该有一个接受初始字符串的构造函数、一个“完成工作”的方法(update、digest)和一个打印结果的方法。 那么 你可以开始做一些有用的事情。 |
![]() |
10
0
你可以在这里替换
|
![]() |
11
0
显而易见的答案是1-当你有问题的时候用谷歌(在我看来这并不算作弊),2-阅读关于这个主题的书籍。 除此之外,我建议你自己找个导师。如果您在工作中没有经验丰富的Java开发人员,那么请尝试加入本地Java开发人员用户组。你可以在那里找到更有经验的开发人员,也许他们会绞尽脑汁来回答你的问题。 |