A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 珊湖礁 中级黑马   /  2013-12-4 22:41  /  1247 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 珊湖礁 于 2013-12-5 14:24 编辑

怎样编一个程序,将本地计算机所有网络接口的信息打印出来?(要显示每个接口名称、是否支持多点传送、物理地址、ip地址)

2 个回复

倒序浏览
  1. import java.net.InetAddress;
  2. import java.net.InterfaceAddress;
  3. import java.net.NetworkInterface;
  4. import java.util.List;


  5. public class F {
  6. public static void main(String[] args) throws Exception

  7. {
  8.                 InetAddress ia=InetAddress.getLocalHost();
  9.                 NetworkInterface ni=NetworkInterface.getByInetAddress(ia);
  10.                 List<InterfaceAddress> list=ni.getInterfaceAddresses();;
  11.                 for(int i=0;i<list.size();i++)
  12.                 {
  13.                         InterfaceAddress ifa=list.get(i);
  14.                         InetAddress f=ifa.getAddress();
  15.                         System.out.println(f.getHostAddress());
  16.                 }
  17. }
  18. }
复制代码
回复 使用道具 举报 1 0
  1. import java.net.InetAddress;
  2. import java.net.NetworkInterface;
  3. import java.util.Enumeration;


  4. public class F {
  5. public static void main(String[] args) throws Exception

  6. {
  7.                 Enumeration<NetworkInterface> ni=NetworkInterface.getNetworkInterfaces();
  8.                 while(ni.hasMoreElements())
  9.                 {
  10.                         NetworkInterface list=ni.nextElement();
  11.                         Enumeration<InetAddress> ia=list.getInetAddresses();
  12.                         while(ia.hasMoreElements())
  13.                         {
  14.                                 InetAddress ias=ia.nextElement();
  15.                                 NetworkInterface n=NetworkInterface.getByInetAddress(ias);
  16.                                 if(ias.getHostName()!=null&&!"".equalsIgnoreCase(ias.getHostName())&&ias.getHostAddress()!=null&&!"".equalsIgnoreCase(ias.getHostAddress())&&list.getName()!=null&&!"".equalsIgnoreCase(list.getName())&&list.getDisplayName()!=null&&!"".equalsIgnoreCase(list.getDisplayName()))
  17.                                 {
  18.                                         System.out.print(list.getName());
  19.                                         System.out.println("\t网卡名字:\t"+list.getDisplayName());
  20.                                         System.out.print("\t\t"+ias.getHostName());
  21.                                         System.out.println("\t"+ias.getHostAddress());
  22.                                         System.out.println("------------------------------");
  23.                                 }
  24.                         }
  25.                 }
  26. }
  27. }
复制代码

这是完整答案,没听说过多点传送,只听说过点对点传送

评分

参与人数 1技术分 +1 收起 理由
简★零度 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马