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

手机站
千锋教育

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

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

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

当前位置:首页  >  技术干货  > java获取本机ip

java获取本机ip

来源:千锋教育
发布人:xqq
时间: 2023-08-02 14:39:23 1690958363

Java获取本机IP地址可以通过以下几种方式实现:

1. 使用InetAddress类:

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类:

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对象,通过判断是否为非回环地址和本地地址,获取本机IP地址。

3. 使用System类:

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属性是否为true,来选择获取IPv4地址还是IPv6地址。

以上是获取本机IP地址的几种常用方法,根据具体需求选择适合的方法即可。

千锋教育拥有多年IT培训服务经验,开设Java培训web前端培训大数据培训python培训软件测试培训等课程,采用全程面授高品质、高体验教学模式,拥有国内一体化教学管理及学员服务,想获取更多IT技术干货请关注千锋教育IT培训机构官网。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT