空文字列のチェック
(1)str.equals("")
(2)str.length() == 0
(3)str.isEmpty ←Java6以降
(×)str == "" ←!!!間違い!!!
で、(1)(2)(3)それぞれの使い方のメリット・デメリットを教えて欲しいのですが