Java判断IP地址类型(第二版)

摘要:
11*/12publicclassTestIP{1314publicstaticvoidmain(String[]args)throws UnknownHostException{15//TODOAuto-generated methodstub16/*17*老师说getByName根据地址类型返回了Inet4Address或Inet6Address18*,所以他直接使用了instanceof;
 1 import java.net.Inet4Address;
 2 import java.net.Inet6Address;
 3 import java.net.InetAddress;
 4 import java.net.UnknownHostException;
 5 
 6 /*
 7  * 第一版判断Ipv4或者Ipv6是通过是通过长度来实现的(4段为Ipv4,16段是Ipv6),由于判断的是本机IP,
 8  * 所以没有校验值得合法性;
 9  * 后来学了正则表达式;
10  * 现在使用instanceof操作符。
11  */
12 public class TestIP {
13 
14     public static void main(String[] args) throws UnknownHostException {
15         // TODO Auto-generated method stub
16         /*
17          * 老师说了getByName已经根据地址类型返回Inet4Address或者Inet6Address
18          * 所以直接使用instanceof;
19          * 原来发现有问题,结果改成了Object ia = (Object)InetAddress.getByName("www.baidu.com")对了,
20          * 后来发现忘记引入包了Inet4Address和Inet6Address.
21          */
22         InetAddress ia = InetAddress.getByName("www.baidu.com");
23         System.out.println(ia);
24         
25         boolean flag1 = ia instanceof Inet4Address;
26         boolean flag2 = ia instanceof Inet6Address;
27         
28         if(flag1) {
29             System.out.println("IPV4地址");
30             System.out.println("根据第一字节判断类别(A到E)!");
31         }else if(flag2) {
32             System.out.println("IPV6地址");
33         }else {
34             System.out.println("非法IP");//若是发生UnknownHostException则该句有效
35         }
36     }
37 
38 }

免责声明:文章转载自《Java判断IP地址类型(第二版)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Dictionary.TryGetValue 方法 试用记 MarkVirtual Box虚拟机下CentOS网络设置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

.NET调用Java写的WebService

最近遇到一个用.net调用java写的webservice的应用,对方程序员提供了一个后缀为wsdl的文件,这个跟.Net里面生成的wsdl文件差不多,起初没什么概念就查了点资料,知道可以将这个wsdl文件编译动态库直接调用,也就是生成一个代理了,这个跟以往经常将.net的webservice描述地址进行编译似乎差不多,于是就尝试这写,还基本能实现。基本格...

u-boot移植总结(三)(转)S3C2440对Nand Flash操作和电路原理(基于K9F2G08U0A)

S3C2440对Nand Flash操作和电路原理(基于K9F2G08U0A) 转载自:http://www.cnblogs.com/idle_man/archive/2010/12/23/1915303.html S3C2440内部集成了一个Nand flash控制器。S3C2440的Nand flash控制器包含了如下的特性: l        一...

java实现 http请求的同步和异步发送

http同步请求 一般使用httpClient实现 private void sendRequest() throws Exception{ String path ="/statistic/info"; CloseableHttpClient httpClient = HttpClients.createDefault(); /...

关于 IPv6 你需要知道的 10 件事

在过去的几年里,IPv6已经逐渐慢慢地成为主流,但许多IT专业人士在面临IPv6时还手足无措,的确,IPv6和IPv4存在很大的不同,本文为此而写,希望能帮助你消除IPv6恐惧症。 1、IPv6地址是128位十六进制数 IPv4地址是有4个数字位组(总共32位)组成的,IPv6地址的长度时128位,而且是由16进制字符组成的。在IPv4中,每个位组由0-...

WINDBG分析DMP方法

上次发了2100蓝屏抓DMP分析案例这个帖子后,好多人想学怎么分析DMP,那我也是刚刚学的,简单的说下。http://bbs.icafe8.com/forum.php?mod=viewthread&tid=399075&fromuid=301231:先下载附件WinDbg,解压出来后,直接运行里面的windbg.exe。(或者可以自已去网上...

VMware Workstation中虚拟机的克隆

1 克隆虚拟机 首先需要准备好一个安装好的系统,这里以linux为例进行演示。  在需要克隆的机器上右键选择管理==》克隆  选择需要克隆的虚拟机的状态,如果你想要的就是当前的状态,就直接选择虚拟机中的当前状态。 如果虚拟机有快照,也可以先回退到一个指定的版本,然后执行克隆。 选择克隆的类型,推荐完整克隆,可以完全独立运行。如果磁盘很少,就选择链接...