错误:String的空指针解除引用

时间:2010-08-19 18:13:21

标签: java string nullpointerexception

下面的测试代码导致字符串数组上的“空指针参考”错误(在第6行)。这导致NullPointerException。

public class TestString {
public static void main (String args[]) {
String test [] = null;
for (int i =0; i < 5; i++) {
  String testName = "sony" + i;
  test [k] = testName;
}
}
}

- 我该如何解决这个问题? - 导致这个错误的是什么?

谢谢, 索尼

4 个答案:

答案 0 :(得分:6)

您需要在此之前初始化您的数组:

test = new String[5];

无论何时使用数组,JVM都需要知道它是否存在及其大小。

在java中,有很多方法可以初始化数组。

test = new String[5];

只需创建一个包含五个阵地的数组。 (你不能添加第六个元素)

test = new String[]{"1", "2"};

创建一个包含两个位置的数组,其中包含值1和2。

String[] test = {"1", "2"};

创建一个包含两个位置的数组,其中包含值1和2.但是您注意到它必须同时使用数组声明

在Java数组 static 中,您可以在创建时指定大小,并且无法对其进行更改。

答案 1 :(得分:3)

您的代码中有太多错误。 1)什么是k? 2)您需要首先初始化测试阵列。

String test[] = new String[5]; // or any other number

答案 2 :(得分:0)

您没有初始化阵列。在第三行,您将其设置为null,然后在第六行,您尝试将字符串设置为不存在的数组。您可以像这样初始化数组:

String test [] = new String[5];

答案 3 :(得分:0)

String test[] = null;更改为String test[] = new String[5]; 必须初始化数组。

请参阅:http://download.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html