Why a is correct? The StringBuilder class was added in Java 5. It has exactly the same API as the StringBuffer class, except StringBuilder is not thread safe. In other words, its methods are not synchronized.
A is false because the toString() method is thread safe -- and this is true regardless of whether a string buffer or builder is used. The buffer is a local variable that doesn't escape the method, there is no way that it can be accessed by multiple threads.