介紹
在網絡編程中,獲取本機的IP地址是非常常見的需求。在Java語言中,獲取本機IP地址的方法非常簡單,本篇文章將會介紹Java獲取本機IP地址的方法。
正文
1、通過InetAddress獲取本機IP地址
Java中通過InetAddress類的getLocalHost()方法可以獲取本機的IP地址。示例代碼如下:
import java.net.InetAddress; public class Main { public static void main(String[] args) { try { InetAddress localHost = InetAddress.getLocalHost(); System.out.println("本機IP地址為:" + localHost.getHostAddress()); } catch (Exception e) { e.printStackTrace(); } } }
運行以上代碼,可以輸出當前本機的IP地址。
2、通過NetworkInterface獲取本機IP地址
除了使用InetAddress類獲取本機IP地址之外,還可以使用java.net.NetworkInterface類來獲取本機IP地址。
首先使用NetworkInterface類的getNetworkInterfaces()方法獲取當前機器所有的網絡接口,然後遍歷每個網絡接口獲取其對應的IP地址。示例代碼如下:
import java.net.NetworkInterface; import java.net.InetAddress; import java.util.Enumeration; public class Main { public static void main(String[] args) { try { Enumeration enu = NetworkInterface.getNetworkInterfaces(); while (enu.hasMoreElements()) { NetworkInterface ni = enu.nextElement(); Enumeration enumIpAddress = ni.getInetAddresses(); while (enumIpAddress.hasMoreElements()) { InetAddress ip = enumIpAddress.nextElement(); if (!ip.isLinkLocalAddress() && !ip.isLoopbackAddress() && ip.isSiteLocalAddress()) { System.out.println("本機IP地址為:" + ip.getHostAddress()); } } } } catch (Exception e) { e.printStackTrace(); } } }
運行以上代碼,可以輸出當前本機的IP地址。
總結
本篇文章介紹了如何使用Java獲取當前機器的IP地址。Java中有多種方式可以獲取本機IP地址,其中通過InetAddress類和NetworkInterface類獲取本機IP地址較為常用。InetAddress類的getLocalHost()方法可以獲取本機主機的IP地址,而NetworkInterface類的getNetworkInterfaces()方法可以獲取當前機器所有的網絡接口,遍歷每個網絡接口獲取其對應的IP地址即可。
原創文章,作者:RZGR,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/149532.html