Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 初始化方法中的对象并在另一个方法中创建其副本_Java - Fatal编程技术网

Java 初始化方法中的对象并在另一个方法中创建其副本

Java 初始化方法中的对象并在另一个方法中创建其副本,java,Java,我试图在静态void方法中用3个空字符串初始化字符串数组。然后在另一个静态字符串[]方法中复制该字符串数组 我尝试过几种方法,但最好的方法是什么 public static void createEmptyStrings() { String[] str = new String[]{"", "", ""}; } public static String[] copyStrings() { // return an empty string } 你可以这样做: public st

我试图在
静态void
方法中用3个空字符串初始化字符串数组。然后在另一个
静态字符串[]
方法中复制该
字符串数组

我尝试过几种方法,但最好的方法是什么

public static void createEmptyStrings() {
      String[] str = new String[]{"", "", ""};
}

public static String[] copyStrings() {
// return an empty string
}

你可以这样做:

public static String[] getStrings(){
    String[] strings = {"", "", ""};
    return strings
}

public static String[] copyStrings(String[] stringArray){
    return stringArray.clone();
}

// Sample Usage
String[] originalStrings = getStrings();
String[] copiedStrings = copyStrings(originalStrings);
.clone()
方法在java中非常有助于创建对象的副本,而不是像许多人意外地引用它

如果希望阵列有3个空插槽,而不是用“”填充,请将第二行更改为:

public String[] strings = new String[3];

显示您的尝试以及遇到的问题。为什么要复制填充有空字符串的数组?只需创建一个新字符串:
newstring[]{“,”}
。空字符串实例将被重用。逻辑是,我会将该方法放入循环中,并每次初始化字符串。但我需要初始化的第一部分位于静态void方法中,因为我需要多次调用它