使用Unicode ROT13算法代替ASCII ROT13算法。
示例代码如下:
public static String rot13(String input) {
StringBuilder output = new StringBuilder();
for (char c : input.toCharArray()) {
if (c >= 'A' && c <= 'Z') {
output.append((char) (((c - 'A' + 13) % 26) + 'A'));
} else if (c >= 'a' && c <= 'z') {
output.append((char) (((c - 'a' + 13) % 26) + 'a'));
} else {
output.append(c);
}
}
return output.toString();
}
在上述代码中,我们使用Unicode字符集,并对大写和小写字符都应用了相同的ROT13算法。