Java 8 String加入奇怪的行为

ada*_*ubi -1 java

使用String.join 我得到意想不到的输出.下面的代码应该打印ABC,而是打印BAC

System.out.println(String.join("A", "B", "C"))
Run Code Online (Sandbox Code Playgroud)

Aug*_*ust 7

在该String.join方法中,第一个参数是分隔符,其余参数是使用分隔符连接的字符串.所以你的代码基本上是说"加入BC使用A分隔符".

也许你会这样做:

System.out.println(String.join("", "A", "B", "C")) // ABC
Run Code Online (Sandbox Code Playgroud)