Я думаю, что проблема в том, что оператор анализируется следующим образом:
System.out.println( ("Value="+sb) != null ? sb.toString() : "Null" );
Оператор конкатенации строк (+) имеет более высокий приоритет, чем троичный оператор.
Поскольку "Value" + null всегда не равно null, sb.toString () всегда будет вызываться, даже если sb равно null, следовательно, NullPointerException.
Если сомневаешься - заключи в скобки! Даже если не сомневаюсь! :)