猿问

Java 中是否有 Ruby's Digest::MD5.base64digest 的等效项?

我想将 Ruby 代码转换为 Java。一切都很好,除了一行:


digest = Digest::MD5.base64digest("#{width} #{height} #{unescaped_path} #{salt}")

digest.tr!('+/', '-_')

digest.tr!('=', '')

这段代码在 Java 中看起来有何相似之处?我想这会是这样的


digest = Base64.getDecoder().decode(width + " " + height + unescaped_path + salt);

然而,tr!我不清楚。它看起来像replace,但我不确定。


守候你守候我
浏览 119回答 1
1回答

撒科打诨

该tr方法有两种模式。一种是将 A 组中的字符映射到 B 组中的字符:"ABBA".tr('ABC', 'DEF') # => "DEED"这需要映射相同长度的字符串。如果替换侧为空,则删除匹配集中的字符实例:"ABBA".tr('A', '') # => "BB"tr!是就地版本,tr但工作原理相同。
随时随地看视频慕课网APP

相关分类

Java
我要回答