InetAddress对象的获取方式

简单总结一下InetAddress对象产生的几种方式

代码

package com.demo;

import java.net.InetAddress;
import java.net.UnknownHostException;
/**
 * 
 * @author Lynn
 * 1、getByName()和getByAddress()方法的使用;
 * 2、getLocalHost()方法;
 * 3、getLoopbackAddress()方法;
 * 4、注意第三种方式和第四种方式;
 *
 */
public class Demo01 {
    public static void main(String[] args) throws UnknownHostException {
        System.out.println("-----第一种方式-------");
        // 第一种方法:通过域名来获取IP对象(包括域名+IP地址)
        InetAddress inet1 = InetAddress.getByName("www.baidu.com");
        System.out.println("IP对象:" + inet1);
        // 获取对应的IP
        System.out.println("域名:" + inet1.getHostName());
        System.out.println("IP地址:" + inet1.getHostAddress());

        System.out.println("-----第二种方式-------");
        // 第二种方法:请注意后面byte数组的写法(参看:https://blog.csdn.net/ling376962380/article/details/72824880)
        InetAddress inet2 = InetAddress.getByAddress("www.baidu.com", new byte[] { (byte) 180, 97, 33, 107 });
        System.out.println("IP对象:" + inet2);
        System.out.println("域名:" + inet2.getHostName());
        System.out.println("IP地址:" + inet2.getHostAddress());

        System.out.println("-----第三种方式-------");
        // 第三种方法:通过IP地址字符串
        InetAddress inet3 = InetAddress.getByName("180.97.33.107");
        System.out.println("IP对象:" + inet3);
        System.out.println("域名:" + inet3.getHostName());
        System.out.println("IP地址:" + inet3.getHostAddress());

        System.out.println("-----第四种方式-------");
        // 第四种方法:通过IP地址字符串
        InetAddress inet4 = InetAddress.getByAddress(new byte[] { (byte) 180, 97, 33, 107 });
        System.out.println("IP对象:" + inet4);
        System.out.println("域名:" + inet4.getHostName());
        System.out.println("IP地址:" + inet4.getHostAddress());
        
        System.out.println("------获取本机的----");
        InetAddress inet5 = InetAddress.getLocalHost();
        System.out.println("IP对象:" + inet5);
        System.out.println("域名:" + inet5.getHostName());
        System.out.println("IP地址:" + inet5.getHostAddress());
        
        System.out.println("----获取回环地址----");
        InetAddress inet6 = InetAddress.getLoopbackAddress();
        System.out.println("IP对象:" + inet6);
        System.out.println("域名:" + inet6.getHostName());
        System.out.println("IP地址:" + inet6.getHostAddress());
        
        

    }
}

运行结果

709915-20181212211153632-664935602.png

补充

关于IP地址以byte数组表示的时候使用new byte[] { (byte) 180, 97, 33, 107 })这种方式不会出错的解释请参看https://blog.csdn.net/ling376962380/article/details/72824880

转载于:https://www.cnblogs.com/SnailsRunning/p/10111060.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值