StringBuilder的应用

  API中说它是一个可变字符串序列。

  该类中最常用到的方法是append()和insert(),应用场景:某类的toString()方法中、单线程中()。

  比如,在hadoop的org.apache.hadoop.fs包中的BlockLocation类中就应用到此类:  

public class BlockLocation implements Writable{
  private String[] hosts;
  private String[] names;
  private String[] topologyPaths;
  private long offset;
  private long length;
 .......

 public String toString(){
   StringBuilder result = new StringBuilder();
   result.append(offset);
   result.append(',');
   result.append(length);
   for(String h:hosts){
    result.append(',');
    result.append(h);
   }
   return result.toString();
 }

}

  在大多数的实现中,它要比StringBuffer快,所以在单线程中可以替代StringBuffer。

原文地址:https://www.cnblogs.com/yueliming/p/2790883.html