転職を繰り返したサラリーマンの多趣味ブログ

30才未経験でSEに転職した人の多趣味ブログ

【技術書メモ】【パーフェクトJava②】StringとStringBuilderについて

StringとStringBuilderの違い

読み込み専用の文字列クラス:String
変更可能な文字列クラス:StringBuilder
CharSequenceという共通のインタフェースを実装している。

空文字列("")について

isEmptyメソッドで空文字列の判定可。

Stringクラスのオブジェクト生成

ダブルクォートで囲んだ文字列("012345")は、実行時にStringクラスのオブジェクトを生成する。

// Stringオブジェクト"01234"が生成され、それを変数strが参照している
String str = "01234";

StringBuilderクラスについて

変更可能な文字列クラス。

// Stringオブジェクト"012345"が生成
// StringBuilderオブジェクトが生成され、そこにStringオブジェクトから文字列コピーが行われる
StringBuilder sb = new StringBuilder("012345");
// abcをaBcへ変更
StringBuilder sb = new StringBuilder("abc");
sb.setCharAt(1, 'B');