概括为三种方式:
方式一:Integer.toHexString(int) 对应的是: Integer.parseInt(String, int)或者Integer.valueOf(String, int)
方式二:位运算(& 与 |)
方式三:算术运算
package com.example.md5utils;
import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import org.xml.sax.Parser;
public class MD5Utils {
private static final int RADIX_16 = 16;//16进制
public static String HASH_ALGORITHM = "MD5";
public static String generate(String str) {
byte[] md5 = getMD5(str.getBytes());
BigInteger abs = new BigInteger(md5).abs();
return abs.toString(Character.MAX_RADIX);
}
/**
* 方式一:<br>
* byte[] or byte转换16进制字符串<br>
* 使用Integer.toHexString(int)
* @param str
* @return
*/
public static String hexStri