什么是用快速简便的方法将Java数组填充为一个对象的克隆体?
例如,在此之后:
例如,在此之后:
Rectangle[] rectangles = new Rectangle[N];
fillWithClones(rectangles, new Rectangle(1, 2, 3, 4));
rectangles
数组将包含N个不同的Rectangle
实例,这些实例使用相同的坐标进行初始化。
我意识到Java中Object.clone()
的缺陷,但在这种情况下,我知道要复制的对象具有非抛出异常的公共clone()
方法,但可能或可能没有公共拷贝构造函数。
我猜测库中肯定有一个方法可以做到这一点,但我认为它不是JDK、Commons-collections或者Guava中的方法。
public static void fillWithClones(Object[] array, Object template)
。 - user102008