全路徑名:
com.google.common.base
Objects.ToStringHelper
聲明
public static final class Objects.ToStringHelper extends Object
簡介
上節(jié)提到了這個類。是Objects的內(nèi)部類。
方法
add
public ToStringHelper add(String name, double value)
在格式化name=value的輸出上加一對name/value。
如果value為null,那么會用到字符串“null”。
addValue
public ToStringHelper addValue(@NullableDecl Object value)
格式化為value的輸出上加一個value。
toString
public String toString()
返回格式化指定為Objects.toStringHelper(Object)的字符串。
源碼如下:
@Override
public String toString() {
// create a copy to keep it consistent in case value changes
boolean omitNullValuesSnapshot = omitNullValues;
String nextSeparator = "";
StringBuilder builder = new StringBuilder(32).append(className).append('{');
for (ValueHolder valueHolder = holderHead.next;
valueHolder != null;
valueHolder = valueHolder.next) {
Object value = valueHolder.value;
if (!omitNullValuesSnapshot || value != null) {
builder.append(nextSeparator);
nextSeparator = ", ";
if (valueHolder.name != null) {
builder.append(valueHolder.name).append('=');
}
if (value != null && value.getClass().isArray()) {
Object[] objectArray = {value};
String arrayString = Arrays.deepToString(objectArray);
builder.append(arrayString, 1, arrayString.length() - 1);
} else {
builder.append(value);
}
}
}
return builder.append('}').toString();
}