我需要创建一个从字节数组生成对象的方法。我最好的尝试:
private static <T> T objectCreate(byte[] bytes, Class<T> clazzType) {
if (clazzType.isAssignableFrom(String.class)) {
t = (T) new String(bytes);
return t;
}
}
但是我在t = (T) new String(bytes);
我可以做得更好吗?
答案 0 :(得分:0)
您可以使用Class.cast
:
t = clazzType.cast(new String(bytes));
这是合乎逻辑的,因为您依靠Class
方法进行类型检查。然而,这只是一种风格差异;虽然它没有发出警告,但它本身仍然是一种未经检查的操作。