2011-12-14 115 views
1

我有一个关于字符串的查询。Android字符串初始化

我宣布我的字符串数组:

private static String[] name; 

我则试图将字符串添加到它:

name[0] = temp // Where temp as another string 

我得到一个空指针错误与上面的代码。我正确初始化我的字符串数组?

+0

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html – eldarerathis 2011-12-14 22:06:14

回答

4

看起来你已经错过了写 name = new String[CAPACITY]; 地方

2

如果要动态元素添加到字符串数组我会建议你做

private static ArrayList<String> name = new ArrayList<String>(); 

,然后在下面使用添加字符串:

name.add(temp); 

如果你知道它的大小,那么你可以创建一个像这样的阵列:

private static String[] name = new String[10]; //if it's going to have 10 elements (typo corrected) 
0

问题是你没有初始化你的字符串数组。

你可以声明并初始化这样说:

private static String[] name = new String[4];其中“4”是你的数组的大小。

或:

private static String[] name = {temp, temp2, temp3};凡临时工是阵列中的每个单独的项目。

0

在点

private static String[] name; 
在你的代码

, '名' 还是null

对于字符串数组,您必须声明要存储的(常量)字符串数。

int n = 10; 
private static String[] name = new String[n]; 

然后,您不能再向您的阵列写入超过n的字符串。

如果要动态显示字符串的数量,则必须使用Vector<String>ArrayList<String>。两个对象都使用myStrings.add(String string)-方法添加字符串,并且可以通过调用myStrings.get(int position)来访问字符串。