概念:InetAddress类是 Java 中用于表示 IP 地址的类。它提供了一种标准的方法来处理 IP 地址,无论是 IPv4 还是 IPv6 地址。InetAddress 类位于 java.net 包中,是 Java 网络编程的一部分。
常用方法:
getLocalHost()
:这个方法获取本地主机的 InetAddress
对象,它表示当前计算机。在你的示例中,你获取了本地主机的 InetAddress
对象并打印了它。
getByName(String host)
:这个方法根据指定的主机名或域名获取对应的 InetAddress
对象。在你的示例中,你使用了两个不同的主机名(本地主机名和百度域名)来获取相应的 InetAddress
对象,并打印了它们。
getHostName()
:这个方法用于获取 InetAddress
对象的主机名。在你的示例中,你使用 host2
对象(百度域名)调用了 getHostName()
方法,以获取主机名并将其打印出来。
getHostAddress()
:这个方法用于获取 InetAddress
对象的 IP 地址。在你的示例中,你使用 host2
对象(百度域名)调用了 getHostAddress()
方法,以获取 IP 地址并将其打印出来。
代码:
public class API_ {
public static void main(String[] args) throws UnknownHostException {
//获取本机 InetAddress 对象 getLocalHost
InetAddress localHost = InetAddress.getLocalHost();
System.out.println(localHost);//LAPTOP-U9K8AF0S/172.21.202.203 获取到主机的信息(主机名和ip地址)
//根据指定主机名/域名获取 ip 地址对象
InetAddress host1 = InetAddress.getByName("LAPTOP-U9K8AF0S");//LAPTOP-U9K8AF0S主机名
System.out.println(host1);//LAPTOP-U9K8AF0S/172.21.202.203,通过主机名来获取到ip地址,当然这边输出的是主机名和ip地址
System.out.println(host1.getHostAddress());//172.21.202.203,获取到ip地址
InetAddress host2 = InetAddress.getByName("www.baidu.com");//www.baidu.com域名
System.out.println(host2);//www.baidu.com/153.3.238.102,通过域名来获取ip地址,当然这边输出的是域名和ip地址
System.out.println(host2.getHostAddress());//153.3.238.102,获取ip地址
}
}