我有以下代码
System.out.println("" + null);
而输出是null.
Java如何在字符串连接中发挥作用?
oxb*_*kes 24
因为Java将表达式转换"A String" + x为某些行"A String" + String.valueOf(x)
实际上我认为它可能使用StringBuilders,所以:
"A String " + x + " and another " + y
解决方案效率更高
new StringBuilder("A String ")
    .append(x)
    .append(" and another ")
    .append(y).toString()
这使用了append"字符串"构建器(对于每种类型)的方法,这些方法可以null正确处理
Java StringBuilder.append( Object obj )在幕后使用.
不难想象它的实施.
public StringBuilder append( Object obj )
{
   if ( obj == null )
   {
       append( "null" );
   }
   else
   {
       append( obj.toString( ) );
   }
   return this;
}