String类中有很多方法在StringBuffer都没有,比如endWith(),为什么呢?api为什么要设计成这样?

解决方案 »

  1.   

    StringBuffer与String主要不同是实现了可修改的字符串,所以它的主要方法应集中在修改上。
      

  2.   

    如果你要用endWith(),可以把StringBuffer给toString();啊。
      

  3.   

    pdvv(我爱花猫):修改之前先用endWith()判断不是更好吗?
      

  4.   

    StringBuffer.toString().endWith() 就可以了
      

  5.   

    或许这么说比较好,String object的内存大小分配是固定的,在内存中的内容是不可以改变的,所以支持endWith(),而BufferString object的内容去不是可以动态增加,因为内存中的内容可以改变,所以不支持endWith()。
      

  6.   

    觉得O__________________K(K__________________O)说的比较在理
      

  7.   

    StringBuffer是动态的,但要实现一个endwith也不是什么难事,只不过没有必要罢了,还是那句话,术业有专攻,专类专用
      

  8.   

    O__________________K(K__________________O)
    说得很对啊,stringbuffer根本就是动态的长度(实际所用的长度肯定是固定的),末尾在什么地方呢?(