String對象中的replace和replaceAll的區別?


replace方法:支持字符和字符串的替換。

public String replace(char oldChar, char newChar)
 
public String replace(CharSequence target, CharSequence replacement)

 

 

replaceAll方法:基於正則表達式的字符串替換。

public String replaceAll(String regex, String replacement)

 

 

測試代碼:

String str = "Hello Java. Java is a language.";
System.out.println(str.replace("Java.", "c++"));//打印 Hello c++ Java is a language.
System.out.println(str.replaceAll("Java.", "c++"));//打印 Hello c++ c++is a language.

 

打印結果:

Hello c++ Java is a language.
Hello c++ c++is a language.

 

ps:曾一度認為 replace() 是首個匹配的 字符 或 字符串 替換,replaceAll() 是目標字符串中全部匹配的字符 或 字符串替換,從結果來看這個認知是錯誤的。

 

 

  

來一道刷了進BAT的面試題?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM