in src/main/java/net/hydromatic/linq4j/expressions/Primitive.java [510:534]
public String arrayToString(Object array) {
switch (this) {
case BOOLEAN:
return Arrays.toString((boolean[]) array);
case BYTE:
return Arrays.toString((byte[]) array);
case CHAR:
return Arrays.toString((char[]) array);
case DOUBLE:
return Arrays.toString((double[]) array);
case FLOAT:
return Arrays.toString((float[]) array);
case INT:
return Arrays.toString((int[]) array);
case LONG:
return Arrays.toString((long[]) array);
case SHORT:
return Arrays.toString((short[]) array);
case OTHER:
case VOID:
return Arrays.toString((Object[]) array);
default:
throw new AssertionError("unexpected " + this);
}
}