错误:使用 JAVA 的系统 IP Adrress



我使用InetAddress来获取IP地址。

这是我的代码

String hostname=args[0];

        try {
            InetAddress ipaddress= InetAddress.getByName(hostname);
            System.out.println("IPADDRESS" +ipaddress.getHostAddress());
        } catch (UnknownHostException e) {
            // TODO Auto-generated catch block
            System.out.println("Could not find anything" +hostname);
        }

但在控制台中

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at com.networking.ipaddress.IP.main(IP.java:11)  

到底有什么问题?代码或系统有问题?

您可以在类中的第 11 行中查看确切的位置,但显然这是您从 args 数组中分配主机名的行。

String hostname=args[0];

如果是 main 方法的 args[] 数组,请确保在运行程序时传递主机名。

您从程序参数中获取主机名,但在启动 java 时未将主机名指定为程序参数,因此 args[] 数组为空数组,这就是为什么访问其 [0] 元素会引发异常的原因。在运行应用程序时,您必须指定主机名作为 java 的参数,如下所示:

java YourClassFileName 192.168.1.1

最新更新