Java StringBuffer 和 StringBuilder

﹏ヽ暗。殇╰゛Y 2022-12-12 02:19 302阅读 0赞

当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次修改,并且不产生新的未使用对象。StringBuilder不是线程安全的,不能同步访问,这是它和StringBuffer之间最大的不同。

StringBuffer方法:

  • public StringBuffer append(String s) 将指定的字符串追加到此字符序列
  • public StringBuffer reverse() 将此序列用其反转形式取代
  • public delete(int start, int end) 移除序列的子字符串中的字符
  • public insert(int offset, int i) 将int参数的字符串表示形式插入此序列中
  • replace(int start, int end, String str) 使用给定String中的字符替换此序列中的子字符串中的字符

示例代码:

  1. public class Test{
  2. public static void main(String args[]{
  3. StringBuffer sb = new StringBuffer();
  4. sb.append("java");
  5. sb.append("StringBuffer");
  6. sb.append("StringBuilder");
  7. System.out.println(sb);
  8. }
  9. }

整数转罗马数字问题:

  1. class Solution{
  2. public String intToRoman(int num){
  3. int[] values = {1000,900,500,400,100,90,50,40,10,9,5,4,1};
  4. String[] symbols = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
  5. StringBuilder sb = new StringBuilder();
  6. for(int i=0;i<values.length&&num>0;i++){
  7. while(values[i]<=num){
  8. num -= values[i];
  9. sb.append(symbols[i]);
  10. }
  11. }
  12. return sb.toString();
  13. }
  14. }

发表评论

表情:
评论列表 (有 0 条评论,302人围观)

还没有评论,来说两句吧...

相关阅读