欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java獲取ip地址與網(wǎng)絡接口的方法示例

 更新時間:2018年01月10日 10:01:50   作者:駿馬金龍  
這篇文章主要給大家介紹了關于利用java如何獲取ip地址與網(wǎng)絡接口的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。

java.net包

大家應該都知道,網(wǎng)絡相關對象在java.net包中,Java net包下的類如下:

1.獲取主機對象InetAddress

//獲取本地主機對象
InetAddress host = InetAddress.getLocalHost();
//根據(jù)ip地址或主機名獲取主機對象,以主機名獲取主機時需要DNS解析
InetAddress host = InetAddress.getByName("192.168.100.124");
InetAddress host = InetAddress.getByName(www.baidu.com);

2.獲取主機對象的ip地址和主機名(需要dns解析主機名)

host.getHostAddress();
host.getHostName();

3.獲取本機所有接口NetworkInterface并遍歷

//返回數(shù)據(jù)類型為Enumeration
Enumeration<NetworkInterface> enu = NetworkInterface.getNetworkInterfaces();
while(enu.hasMoreElements){
 NetworkInterface inet = enu.nextElement();
 String intName = inet.getName();
}

由于一個接口上可能有多個子接口(輔助ip,如eth0:1),因此根據(jù)某個接口,可以得到該接口的所有ip地址枚舉集合(同時包括Ipv4和ipv6接口)。

Enumeration<InetAddress> net_list = inet.getInetAddresses();
while(net_list.hasMoreElements){
 InetAddress net = net_list.nextElement();
 String ip = net.getHostAddress();
}

可以使用Collections.list()方法將Enumeration類型轉(zhuǎn)換為ArrayList集合的數(shù)據(jù)結(jié)構(gòu),然后使用Itreator遍歷器遍歷。

以下是獲取本機所有接口名稱和這些接口上的ipv4地址的方法(適用于Windows和Linux)。

import java.net.*;
import java.util.*;
public class EnumDemo {
 public static void main(String[] args) {
  try {
   //獲取所有接口,并放進枚舉集合中,然后使用Collections.list()將枚舉集合轉(zhuǎn)換為ArrayList集合
   Enumeration<NetworkInterface> enu = NetworkInterface.getNetworkInterfaces();
   ArrayList<NetworkInterface> arr = Collections.list(enu);
   for(Iterator<NetworkInterface> it = arr.iterator();it.hasNext();) {
    NetworkInterface ni = it.next();
    String intName = ni.getName(); //獲取接口名
    //獲取每個接口中的所有ip網(wǎng)絡接口集合,因為可能有子接口
    ArrayList<InetAddress> inets = Collections.list(ni.getInetAddresses());
    for(Iterator<InetAddress> it1 = inets.iterator();it1.hasNext();) {
     InetAddress inet = it1.next();
     //只篩選ipv4地址,否則會同時得到Ipv6地址
     if(inet instanceof Inet4Address) {
      String ip = inet.getHostAddress();
      System.out.printf("%-10s %-5s %-6s %-15s\n", "InetfaceName:",intName,"| IPv4:",ip);
     }
    }
   }
  } catch (SocketException s) {
   s.printStackTrace();
  }
 }
}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • 自定義Spring Security的身份驗證失敗處理方法

    自定義Spring Security的身份驗證失敗處理方法

    在本篇文章里小編給大家整理了一篇關于自定義Spring Security的身份驗證失敗的處理方法,有需要的朋友們學習下。
    2019-05-05
  • SpringBoot+SpringSession+Redis實現(xiàn)session共享及唯一登錄示例

    SpringBoot+SpringSession+Redis實現(xiàn)session共享及唯一登錄示例

    這篇文章主要介紹了SpringBoot+SpringSession+Redis實現(xiàn)session共享及唯一登錄示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Java實戰(zhàn)之藥品管理系統(tǒng)的實現(xiàn)

    Java實戰(zhàn)之藥品管理系統(tǒng)的實現(xiàn)

    這篇文章主要介紹了利用Java實現(xiàn)的藥品管理系統(tǒng),本項目屬于前后端分離的項目,分為兩個角色藥品管理員和取藥處人員,感興趣的小伙伴可以學習一下
    2022-04-04
  • Java可重入鎖ReentrantLock詳解

    Java可重入鎖ReentrantLock詳解

    這篇文章主要介紹了Java可重入鎖ReentrantLock詳解,ReentrantLock是一個可重入且獨占式的鎖,是一種遞歸無阻塞的同步機制,它支持重復進入鎖,即該鎖能夠支持一個線程對資源的重復加鎖,除此之外,該鎖的還支持獲取鎖時的公平和非公平性選擇,需要的朋友可以參考下
    2023-09-09
  • Java回調(diào)函數(shù)實例代碼詳解

    Java回調(diào)函數(shù)實例代碼詳解

    這篇文章主要介紹了Java回調(diào)函數(shù)實例代碼詳解,需要的朋友可以參考下
    2017-10-10
  • Java中的ArrayList集合源碼解析

    Java中的ArrayList集合源碼解析

    這篇文章主要介紹了Java中的ArrayList集合源碼解析,ArrayList是一種以數(shù)組實現(xiàn)的List,與數(shù)組相比,它具有動態(tài)擴展的能力,因此也可稱之為動態(tài)數(shù)組,需要的朋友可以參考下
    2023-12-12
  • java實現(xiàn)學生教師管理系統(tǒng)

    java實現(xiàn)學生教師管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java實現(xiàn)學生教師管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • Spring源碼解析之編程式事務

    Spring源碼解析之編程式事務

    今天給大家?guī)淼氖顷P于Java Spring的相關知識,文章圍繞著Spring編程式事務展開,文中有非常詳細的介紹,需要的朋友可以參考下
    2021-06-06
  • 在Action中以Struts2的方式輸出JSON數(shù)據(jù)的實例

    在Action中以Struts2的方式輸出JSON數(shù)據(jù)的實例

    下面小編就為大家?guī)硪黄贏ction中以Struts2的方式輸出JSON數(shù)據(jù)的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • SpringBoot實現(xiàn)發(fā)送QQ郵件的示例代碼

    SpringBoot實現(xiàn)發(fā)送QQ郵件的示例代碼

    這篇文章主要介紹了SpringBoot如何實現(xiàn)發(fā)送QQ郵件功能,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09

最新評論