public static String hash(String s) { try { String a = toHex(md5(s)); if (a != null) { return new String(a.getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8); } else { return ""; } } catch (Exception e) { log.error("not supported charset...{}", e.getMessage()); return s; } } 方法md5可以为null吗
时间: 2024-02-14 19:23:04 浏览: 109
public static String[] split(String s, String regex)
5星 · 资源好评率100%
方法`md5`返回值可以为`null`,如果在`try`块中出现异常,或者`catch`块中的错误处理程序返回`null`,则该方法返回值为`null`。在`try`块中,如果`MessageDigest.getInstance("MD5")`或`algorithm.update(s.getBytes("UTF-8"))`抛出异常,那么`algorithm.digest()`将不会被调用,`messageDigest`将为`null`。在`catch`块中,如果出现异常,那么`md5`方法将返回`null`,因为`return null;`语句在`catch`块中。因此,需要在调用`md5`方法的地方进行必要的空值检查,以避免`NullPointerException`异常。
阅读全文