InetAddress 概述
-
InetAddress 用于表示一个 IP 地址(IPv4 / IPv6)
-
InetAddress 提供了获取主机名、获取 IP 地址等一系列方法
-
其中 Inet 是 Internet 的缩写,代表因特网
一、InetAddress 常用静态方法
1、基本介绍
方法 | 说明 |
---|---|
InetAddress getByName(String host) | 根据指定主机名 / 域名获取 InetAddress 对象 |
InetAddress getByAddress(byte[] addr) | 根据指定 IP 地址字节数组获取 InetAddress 对象 |
InetAddress getByAddress(String host, byte[] addr) | 根据指定主机名和 IP 地址字节数组获取 InetAddress 对象 |
InetAddress getLocalHost() | 获取本机的 InetAddress 对象 |
2、演示
- getByName 方法
InetAddress inetAddress = InetAddress.getByName("www.baidu.com");System.out.println(inetAddress);
// 输出结果www.baidu.com/180.101.50.242
- getByAddress 方法
byte[] ipAddressBytes = {(byte) 192, (byte) 168, 1, 1};
InetAddress inetAddress = InetAddress.getByAddress(ipAddressBytes);System.out.println(inetAddress);
// 输出结果/192.168.1.1
- getByAddress 方法
String host = "Hello";
byte[] ipAddressBytes = {(byte) 192, (byte) 168, 1, 1};
InetAddress inetAddress = InetAddress.getByAddress(host, ipAddressBytes);System.out.println(inetAddress);
// 输出结果Hello/192.168.1.1
- getLocalHost 方法
InetAddress inetAddress = InetAddress.getLocalHost();System.out.println(inetAddress);
// 输出结果LAPTOP-9OPEOOBV/192.168.200.1
二、InetAddress 常用方法
1、基本介绍
方法 | 说明 |
---|---|
String getHostName() | 获取 InetAddress 对象的主机名 |
String getHostAddress() | 获取 InetAddress 对象的 IP 地址 |
2、演示
- getHostName 方法
String host = "Hello";
byte[] ipAddressBytes = {(byte) 192, (byte) 168, 1, 1};
InetAddress inetAddress = InetAddress.getByAddress(host, ipAddressBytes);System.out.println(inetAddress.getHostName());
// 输出结果Hello
- getHostAddress 方法
String host = "Hello";
byte[] ipAddressBytes = {(byte) 192, (byte) 168, 1, 1};
InetAddress inetAddress = InetAddress.getByAddress(host, ipAddressBytes);System.out.println(inetAddress.getHostAddress());
// 输出结果192.168.1.1