日期:2014-05-20  浏览次数:21095 次

JAVA字符串数组函数的循环输入与输出
在主函数中调用randomPersonLine类中的randomPersonLine(int line)
输入参数为想要得到几行字符串 
该方法每行字符串固定为 "pasdasd"
这个是被调用的类

public class randomPersonLine {
public String[] randomPersonLine(int line){

String[] arrayLine = null;

for(int i = 0;i<line;i++){
String lineStr = "";
lineStr += "p";
lineStr += "asdasd";

arrayLine[i] = lineStr;
}
return arrayLine;
}

}

这个是主函数

public class AppClass {
public static void main(String[] args)
{
randomPersonLine line=new randomPersonLine();
String[] str=line.randomPersonLine(10);
for(String str1 : str){
System.out.println(str);
}
}
}



系统报错
Exception in thread "main" java.lang.NullPointerException
at randomPersonLine.randomPersonLine(randomPersonLine.java:11)
at AppClass.main(AppClass.java:7)
空指针
求指导
java J2SE Array

------解决方案--------------------
数组创建时,未指定长度
String[] arrayLine = new String[line];
------解决方案--------------------
String[] arrayLine = null;
以后创建对象什么的 如果没有你付的值是 null ,那么这个是不能直接拿去用的。
------解决方案--------------------
arrayLine是个String数组的引用,但没有指向任何数组。
使用arrayLine = new String[line];让arrayLine指向长度为line的String数组。