Java獲取本地IP地址方法網(wǎng)上搜一籮筐,但基本上都是獲得一個IP,實際開發(fā)中一臺電腦很可能有多個IP地址,如多網(wǎng)卡,或者安裝了VM Ware虛擬機,就會虛擬出其他的網(wǎng)卡,那么傳統(tǒng)的方法得到的一個IP地址就不全面了,下面貼出獲取本機IP列表的方法:
/**
* IceWee 2013.07.19
* 獲取本地IP列表(針對多網(wǎng)卡情況)
*
* @return
*/
public static List<String> getLocalIPList() {
List<String> ipList = new ArrayList<String>();
try {
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
NetworkInterface networkInterface;
Enumeration<InetAddress> inetAddresses;
InetAddress inetAddress;
String ip;
while (networkInterfaces.hasMoreElements()) {
networkInterface = networkInterfaces.nextElement();
inetAddresses = networkInterface.getInetAddresses();
while (inetAddresses.hasMoreElements()) {
inetAddress = inetAddresses.nextElement();
if (inetAddress != null && inetAddress instanceof Inet4Address) { // IPV4
ip = inetAddress.getHostAddress();
ipList.add(ip);
}
}
}
} catch (SocketException e) {
e.printStackTrace();
}
return ipList;
}





























