怎么来的?
StringBuilder sb = new StringBuilder();
sb.append("Hello");
sb.append((String)null);
sb.append(" World!");
Log.d("Test", sb.toString());
生产
06-25 18:24:24.354:D/Test(20740):Hellonull 世界!
我希望附加一个null
字符串根本不会附加!
顺便说一句,强制转换String
是必要的,因为StringBuilder.append()
有很多重载版本。
我简化了我的代码以在这里说明一点,在我的代码中,a 有一个返回字符串的方法
public String getString() { ... }
...
sb.append(getString());
...
getString()
有时返回null
;现在,如果我想使用 a ,我必须对其进行测试StringBuilder
!!!!
此外,让我们在这里澄清我的问题:我怎样才能StringBuilder.append()
以一种优雅的方式接受一个空字符串,而不是将其转换为文字字符串“null”。
优雅我的意思是我不想得到字符串,测试它是否是null
,然后才附加它。我正在寻找一个优雅的oneliner。