Поведение StringBuffer для объектов NULL

Я не могу понять следующее поведение StringBuilder, когда к экземпляру добавляются объекты NULL:

public class StringBufferTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        String nullOb = null;
        StringBuilder lsb = new StringBuilder();

        lsb.append("Hello World");
        System.out.println("Length is: " + lsb.length());// Prints 11. Correct

        lsb.setLength(0);
        System.out.println("Before assigning null" + lsb.length());    
        lsb.append(nullOb);
        System.out.println("Length now is:" + lsb.length()); // Prints 4. ???
    }

}

Последний оператор печати не печатает 0. Может ли кто-нибудь помочь мне понять поведение?

5
задан name_masked 7 November 2011 в 19:49
поделиться