我有一個StringBuilder並希望對字符使用replace方法。 下面給出的代碼在StringBuilder中替換字符
StringBuilder sb = new StringBuilder();
sb.append("01-02-2013");
如何將' - '替換爲'/'?
我有一個StringBuilder並希望對字符使用replace方法。 下面給出的代碼在StringBuilder中替換字符
StringBuilder sb = new StringBuilder();
sb.append("01-02-2013");
如何將' - '替換爲'/'?
如果不想在StringBuilder
轉換爲String
或喲u需要使用它/保存它保持,那麼你可以做這樣的事情...
for (int index = 0; index < sb.length(); index++) {
if (sb.charAt(index) == '-') {
sb.setCharAt(index, '/');
}
}
如果你不那麼在意你可以做這樣的事情......
String value = sb.toString().replace("-", "/");
請注意替換(CharSequence,CharSequence)與String.replace(char,char),第二種形式當然更快,因爲它是直接替換而不是替換模式 - 如果您查看每個源代碼形式你會看到我在說什麼。 –
嘗試這種方式
StringBuilder sb = new StringBuilder();
sb.append("01-02-2013");
sb.replace(sb.indexOf("-"), sb.indexOf("-")+1, "/") ;
sb.replace(sb.indexOf("-"), sb.indexOf("-")+1, "/") ;
System.out.println(sb.toString());
更好的計算策略是
sb.toString().replaceAll("-", "/");
索引是硬編碼 –
不'replaceAll'取'regex'?我認爲它應該是'替換'的方法。 –
你本應該對此進行一點搜索。
無論如何,當開始在java中編程時,最好的方法是瞭解你可以用java內置對象做什麼,就是去這個類的javadoc,在那裏你會知道很多東西。
在你的情況,你會發現你的答案在這裏:StringBuilder javadoc
使用replace
方法。
你可以簡單地使用['toString()。replace(「 - 」,「/")'](http://docs.oracle.com/javase/7/docs/api/java/lang/String。 html#替換%28java.lang.CharSequence,%20java.lang.CharSequence%29) – MadProgrammer
http://stackoverflow.com/questions/3472663/replace-all-occurences-of-a-string-using-stringbuilder – Habib
檢查此方法http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html#setCharAt(int,char) –