我有以下代码:
String checkMessage = Arrays.stream(event.message.getFormattedText().split(" ")).filter(word -> !word.startsWith("§") || word.startsWith("§f")).collect(Collectors.joining(" "));
System.out.println(checkMessage);
不幸的是,通过一些测试,看起来字符串包含以'§'开头的单词,但输出中不包含“§f”。
§r§928 §r§r§c§lTITAN §r§eSimplyAnon§r §ftest§r
这是怎么发生的?
答案 0 :(得分:2)
与编译器使用的内容相比,您的java源文件可能具有不同的字符集。在编译期间使用javac -encoding <source_file_encoding>
(例如,如果源文件是UTF-8,则为javac -encoding utf8
)或使用系统默认编码保存源文件。