我注意到String.replace(CharSequence, CharSequence)java 12 和 13 之间的行为有所不同。
java 12 及更早版本:
System.out.println("String"=="String".replace("g","g")); //false
Run Code Online (Sandbox Code Playgroud)
Java 13 及更高版本:
System.out.println("String"=="String".replace("g","g")); //true
Run Code Online (Sandbox Code Playgroud)
发现这可能是由于:
针对常见情况优化 String.replace(CharSequence, CharSequence)
这是意外行为吗?
是的,我知道 equals 方法。