【问题标题】:Calling method from main throws NullPointerException从 main 调用方法抛出 NullPointerException
【发布时间】:2011-01-17 20:45:13
【问题描述】:

我尝试从我的main 方法调用ss 方法,但它会引发以下异常

线程“主”java.lang.NullPointerException 中的异常 在 teste1.exp.ss(exp.java:16) 在 teste1.Main.main(Main.java:64) Java 结果:1
public class Main {
   public static void main(String[] arguments) {
...................
    private static String[] ff;
    exp mega = new exp();
mega.ss(ff);

}

class exp {

 public void ss (String gvanswer[]){


    String answer[] = new String[3];

            answer[0] = "pacific ";
            answer[1] = "everest";
            answer[2] = "amazon ";

    if (gvnswer[0].equals("pacific"))
   {System.out.println("eeeeeeeeeeeeee  ");}

  if (gvanswer[1].equals(answer[1])){System.out.println("l  ");}

    }

【问题讨论】:

  • 有了这样的类、函数和变量名,我怀疑处理 NPE 将是你未来最大的问题 :)

标签: java nullpointerexception


【解决方案1】:

你打电话给mega.ss(ff),但 ff 从未被初始化为:

ff = new String[1];
ff[0] = "foo";

【讨论】:

  • 定义String数组时的错字
【解决方案2】:

您尚未填充要传递给 ss 方法的名为 ff 的数组。

【讨论】:

    【解决方案3】:

    您将未初始化的 String[] 数组 (ff) 传递给 ss 方法,因此是 NullPointerException

    【讨论】:

    • 实际上:他没有传递“一个统一的String[]”,他根本没有传递String[]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-02
    • 2012-08-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多