1

我正在进行一个需要将值从主类传递到其他类的项目。所有类在具有其主要功能时都可以正常工作。但是,我的项目应该只有一个主类,它调用其他类中的其他函数。

下面是 main 和另一个类的示例。我想通过主类扫描输入并将其传递给解析类。当前的实现给出了两个错误,它们是:

Exception in thread "main" java.lang.NullPointerException
    at url.checker.Parse.GetInput(Parse.java:16)
    at url.checker.Main.main(Main.java:14)
Java Result: 1

给定输入:-url=google.com,-time=5,-email=asdfg@hotmail.com

主.java:

    package url.checker;

    import java.util.Scanner;

        public class Main {

          public static void main(String[] args) 
          {


            Scanner in = new Scanner(System.in);
            System.out.println("Enter the parameters as '-url=' , '-time=' , '-email='.");
            Parse.s = in.nextLine();
            Parse.GetInput(Parse.s);
          }
      }

解析.java:

        package url.checker;
        import java.util.Scanner;

        public class Parse 
        {
          static String s;
          static String result[];

          public static void GetInput(String s)
          {
            int i;

            for(i=0;i<3;i++)
            {
              if (s.startsWith("-url="))
                result[0] = s.substring(5, s.length());
              else if (s.startsWith("-time="))
                result[1] = s.substring(6, s.length());
              else if (s.startsWith("-email="))
                result[2] = s.substring(7, s.length());
              else
                System.out.println("You didn't give any input.");
            }
          }
        }

非常感谢您的帮助。

4

1 回答 1

2
 static String result[];

您从未初始化数组;由于它是静态的,因此默认情况下它被初始化为null

使用 初始化static String[] strings = new String[10];。这将包含 10 个元素String

于 2013-08-21T14:16:10.157 回答