在一个方法中初始化一个对象,并用另一种方法创建它的一个副本
我试图在static void
方法中用3个空字符串初始化一个字符串数组。然后我在另一个static String[]
方法中制作string array
的副本。在一个方法中初始化一个对象,并用另一种方法创建它的一个副本
我已经尝试了几种方法来做到这一点,但是最好的方法是什么?
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];
但我需要初始化的第一部分是在一个静态无效的方法,因为我需要多次调用它 – 2015-03-31 03:22:30
@thecoder我这样 – 2015-03-31 03:30:18
@thecoder它工作吗? – 2015-03-31 04:43:34
显示您尝试与您遇到的问题一起。 – Tarik 2015-03-31 02:55:12
为什么要使数组的副本填充空字符串?简单地创建一个新的:'new String [] {“”,“”,“”}'。空字符串实例将被重用。 – 2015-03-31 02:55:25
逻辑是我将该方法放到一个循环中并且每次都初始化字符串。 – 2015-03-31 04:08:14