< prev index next >
src/java.base/share/classes/sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl.java
Print this page
@@ -31,10 +31,11 @@
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
import java.util.Arrays;
+import java.util.StringJoiner;
import java.util.Objects;
/** Implementing class for ParameterizedType interface. */
public class ParameterizedTypeImpl implements ParameterizedType {
@@ -205,14 +206,11 @@
public String toString() {
StringBuilder sb = new StringBuilder();
if (ownerType != null) {
- if (ownerType instanceof Class)
- sb.append(((Class)ownerType).getName());
- else
- sb.append(ownerType.toString());
+ sb.append(ownerType.getTypeName());
sb.append(".");
if (ownerType instanceof ParameterizedTypeImpl) {
// Find simple name of nested type by removing the
@@ -222,21 +220,17 @@
} else
sb.append(rawType.getName());
} else
sb.append(rawType.getName());
- if (actualTypeArguments != null &&
- actualTypeArguments.length > 0) {
- sb.append("<");
- boolean first = true;
+ if (actualTypeArguments != null) {
+ StringJoiner sj = new StringJoiner(", ", "<", ">");
+ sj.setEmptyValue("");
for(Type t: actualTypeArguments) {
- if (!first)
- sb.append(", ");
- sb.append(t.getTypeName());
- first = false;
+ sj.add(t.getTypeName());
}
- sb.append(">");
+ sb.append(sj.toString());
}
return sb.toString();
}
}
< prev index next >