代码之家  ›  专栏  ›  技术社区  ›  Evantoki Alfa

线程“main”java中出现异常。lang.ArrayIndexOutOfBoundsException:演示时为0。查找。main(Lookup.java:19)

  •  0
  • Evantoki Alfa  · 技术社区  · 2 年前
    package demo;
    import java.net.*;
    
    public class Lookup {
        private InetAddress inet = null;
        public void resolve(String host){
            try{
                inet = InetAddress.getByName(host);
                System.out.println("Host name :" +inet.getHostName());
                System.out.println("IP Address:" +inet.getHostAddress());
            }
            catch(UnknownHostException e){
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args){
            Lookup lookup = new Lookup();
            lookup.resolve(args[0]);
        }
    }
    
    

    我得到了:
    线程“main”java中出现异常。lang.ArrayIndexOutOfBoundsException:0 在演示中。查找。main(Lookup.java:19)

    谢谢

    2 回复  |  直到 2 年前
        1
  •  0
  •   Kenneth Ong    2 年前

    main方法中的“args”是通过参数传入的

    public static void main(String[] args)
    

    假设您正在使用命令行编译代码:

    javac demo\Lookup.java (I am using windows here) 
    

    使用命令行执行代码时,可以传入参数

    java demo.Lookup <lookup ip address here>
    

    如果您使用的是Eclipse之类的IDE,那么可以配置“运行配置”以在“程序参数”中传入IP地址

    eclipse configuration

        2
  •  0
  •   Holden    2 年前

    无论在何处调用此函数,都不会向args参数传递args。所以当你试图得到第一个值时,什么都没有。