黑马程序员技术交流社区

标题: 网络编程部分 [打印本页]

作者: 小海    时间: 2014-3-25 12:11
标题: 网络编程部分
本帖最后由 小海 于 2014-3-27 17:04 编辑

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


作者: kevinmesss.tz    时间: 2014-3-26 09:40
遍历那个InetAddress数组,你要打印出ip地址的话用getHostAddress()方法
InetAddress[] ips = InetAddress.getAllByName("Yesssssss-PC");
                for(InetAddress ip : ips){
                        System.out.println(ip.getHostAddress());
                }
作者: 林发明    时间: 2014-3-26 15:07
首先,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));
        }
}
作者: 小海    时间: 2014-3-27 16:56
恩,上面的方法挺好用,把IP地址转成String类型就可以了,我一直以为要转成字节型的。
作者: 小海    时间: 2014-3-27 17:03
kevinmesss.tz 发表于 2014-3-26 09:40
遍历那个InetAddress数组,你要打印出ip地址的话用getHostAddress()方法
InetAddress[] ips = InetAddress. ...

恩,这个方法最适合,开始不太懂,现在明白了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2