千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:沈阳千锋IT培训  >  技术干货  >  java获取本机ip怎么操作

java获取本机ip怎么操作

来源:千锋教育
发布人:xqq
时间: 2023-08-20 19:36:46

Java获取本机IP的操作可以通过以下几种方式实现:

1. 使用InetAddress类:

```java

import java.net.InetAddress;

import java.net.UnknownHostException;

public class GetLocalIP {

public static void main(String[] args) {

try {

InetAddress localHost = InetAddress.getLocalHost();

String ip = localHost.getHostAddress();

System.out.println("本机IP地址:" + ip);

} catch (UnknownHostException e) {

e.printStackTrace();

}

}

```

上述代码中,我们使用InetAddress类的getLocalHost()方法获取本地主机的InetAddress对象,然后通过getHostAddress()方法获取本机IP地址。

2. 使用NetworkInterface类:

```java

import java.net.InetAddress;

import java.net.NetworkInterface;

import java.net.SocketException;

import java.util.Enumeration;

public class GetLocalIP {

public static void main(String[] args) {

try {

Enumeration interfaces = NetworkInterface.getNetworkInterfaces();

while (interfaces.hasMoreElements()) {

NetworkInterface networkInterface = interfaces.nextElement();

Enumeration addresses = networkInterface.getInetAddresses();

while (addresses.hasMoreElements()) {

InetAddress address = addresses.nextElement();

if (!address.isLoopbackAddress() && address.isSiteLocalAddress()) {

System.out.println("本机IP地址:" + address.getHostAddress());

}

}

}

} catch (SocketException e) {

e.printStackTrace();

}

}

```

上述代码中,我们使用NetworkInterface类的getNetworkInterfaces()方法获取所有网络接口的枚举,然后遍历每个网络接口,再遍历每个网络接口的InetAddress对象,判断是否为非回环地址和本地地址,如果是,则输出该地址。

3. 使用System类:

```java

public class GetLocalIP {

public static void main(String[] args) {

String ip = System.getProperty("java.net.preferIPv4Stack") ? System.getProperty("java.net.preferIPv4Addresses") : System.getProperty("java.net.preferIPv6Addresses");

System.out.println("本机IP地址:" + ip);

}

```

上述代码中,我们使用System类的getProperty()方法获取系统属性,通过判断java.net.preferIPv4Stack属性是否存在来确定使用IPv4还是IPv6地址。

通过以上三种方式,你可以在Java中获取本机IP地址。根据具体需求选择合适的方法来实现。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

idea注释模板怎么操作

2023-08-20

idea创建javaweb项目怎么操作

2023-08-20

go格式化怎么操作

2023-08-20

最新文章NEW

miniodocker怎么操作

2023-08-20

linux-tmp怎么操作

2023-08-20

java除法取整怎么操作

2023-08-20

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>