2011-02-28 49 views
1

我试图端口某些Android 2.x的代码为Android 1.5,这里是有问题的行:。字符串[]清楚在机器人1.5

String[] myStringsArray = ... 
... 
myStringsArray.clear(); 

字符串[]清晰()没有被定义Android 1.5,导致此错误:

[javac] MyClass.java:1692: cannot find symbol 
[javac] symbol : method clear() 
[javac] location: class java.lang.String[] 
[javac]   myStringsArray.clear(); 

什么是最好的,我可以使用呢?

回答

4

可以使用java.util.Arrays实用工具类。

Arrays提供了一种称为fill()的静态方法,它将您的Array作为第一个参数,并将Object或基元填充为第二个参数。

你可以像这样填充你的阵列null

String myStringsArray[] = ... 

Arrays.fill(myStringsArray, null); 

现在阵列中的每个位置都是空的。

1

有没有这样的方法clear()为array.You定义可以去List<String>和使用clear()

+0

我宁愿不改变这个变量的类型,它在许多其他类上有巨大的影响。 – 2011-02-28 09:25:41

+1

@Nicoal:数组在Java中从来没有'clear()'方法。这个电话你想达到什么目的? – 2011-02-28 09:28:14

+0

然后只需用'null'和其他代码(如果需要的话)添加无效性检查,或者您可以简单地创建一个新的数组,以创建先前的对象引用,从而为GC做好准备,并且您将清除一个新的数组 – 2011-02-28 09:28:14

0

没有这样的方法来清除字符串[]

可以使用新的字符串[0];以清除你的值字符串数组