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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小海 中级黑马   /  2014-3-25 12:11  /  1587 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小海 于 2014-3-27 17:04 编辑

老师在网络编程部分讲到了一台主机的IP地址不唯一,可用数组接收,getAllByName(String host),返回一个
InetAddress[]类型的数组,可是怎么使用getAddress()方法来转换,并把IP地址打印出来,我没有测试成功。请教各位高手

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

4 个回复

倒序浏览
遍历那个InetAddress数组,你要打印出ip地址的话用getHostAddress()方法
InetAddress[] ips = InetAddress.getAllByName("Yesssssss-PC");
                for(InetAddress ip : ips){
                        System.out.println(ip.getHostAddress());
                }

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报
首先,InetAddress[]这个数组中存放的是互联网协议 (IP) 地址的实例对象。
其次,我们就可以遍历这个数组的每个元素(也就是每个IP对象),同时利用这个IP对象的getHostAddress方法就可以获取到对应的ip地址了。
最后,将他们打印到控制台就可以了!
我的方法是下面的代码:
import java.net.*;
import java.util.*;

class IPDemo
{
        public static void main(String[] args) throws Exception
        {
                InetAddress[] i = InetAddress.getAllByName("www.baidu.com");
                System.out.println(Arrays.toString(i));
        }
}

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报
恩,上面的方法挺好用,把IP地址转成String类型就可以了,我一直以为要转成字节型的。
回复 使用道具 举报
kevinmesss.tz 发表于 2014-3-26 09:40
遍历那个InetAddress数组,你要打印出ip地址的话用getHostAddress()方法
InetAddress[] ips = InetAddress. ...

恩,这个方法最适合,开始不太懂,现在明白了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马