Java中的克隆方法用法

时间:2018-03-12 07:28:48

标签: java arrays clone

clone()有什么用?

String[] arg0 = (String[]) this.command.toArray(new String[this.command.size()]);   // List<String> command;
arg0 = (String[]) arg0.clone();   //Line#2
String[] arg1 = arg0;

我没有得到第2行试图实现的目标?

我查看了clone()的定义方式

protected native Object clone() throws CloneNotSupportedException;

但是没有多大意义。我是Java的新手。

2 个答案:

答案 0 :(得分:0)

它生成数组的副本,以便将来对数组的更改不会对原始数组产生影响。

在这个例子中很难说克隆是否有意义。人们需要查看this.command.toArray方法的详细信息。

答案 1 :(得分:0)

将List转换为数组,然后克隆数组。对克隆的新阵列的任何更新都不会影响您的原始阵列。如果现在更新克隆的阵列,则不会影响原始阵列。 根据您的ToArray方法,如果列表返回存储列表的原始Array,则对Array的任何更新都可以更新列表,但在这种情况下,克隆它时,克隆的更新不会影响List。