Java FAQ:String と StringBuffer

Java FAQ:S008 Q-06

多少 FAQ から外れるけど、気がついたこと

  • 最近は、StringBuilder というものもある
  • StringBuffer#append や StringBuffer#insert の引数は、なぜか boolean から double までいろいろな引数が取れるようになっている。といって、String や StringBuffer のコンストラクタの引数ではそのような色々な型が取れるようになっていない。
  • StringBuffer sb = ""; ということはできない。
  • String のメソッドが StringBuffer のインスタンスを返すことはない
  • StringBuffer のメソッドは返り値があるとしても、文字列関係では StringBuffer を返すのが基本。String のインスタンスを返すのは、substring, toString のみ。
  • StringBuffer で String のメソッドが全て使えるわけではない。(困らない?)
  • StringBuffer#equals は String#equals とは違う(StringBuffer#equals は Object#equals なのか?)