getaddress java_java用getAddress方法取得IP地址 | 學步園

本篇教你java用getAddress方法取得IP地址:

getAddress方法和getHostAddress類似,它們的唯一區別是getHostAddress方法返回的是字符串形式的IP地址,而getAddress方法返回的是byte數組形式的IP地址。getAddress方法的定義如下:

public byte[] getAddress()

這個方法返回的byte數組是有符號的。在Java中byte類型的取值範圍是-128〜127。如果返回的IP地址的某個字節是大於127的整數,在byte數組中就是負數。由於Java中沒有無符號byte類型,因此,要想顯示正常的IP地址,必須使用int或long類型。下面代碼演示了如何利用getAddress返回IP地址,以及如何將IP地址轉換成正整數形式。

package mynet;

import java.net.*;

public class MyIP

{

public static void main(String[] args) throws Exception

{

InetAddress address = InetAddress.getByName("www.csdn.net");

byte ip[] = address.getAddress();

for (byte ipSegment : ip)

System.out.print(ipSegment + " ");

System.out.println("");

for (byte ipSegment : ip)

{

int newIPSegment = (ipSegment 

System.out.print(newIPSegment + " ");

}

}

}

運行結果:

-45 100 26 122

211 100 26 122

從上面的運行結果可以看出,第一行輸出了未轉換的IP地址,由於www.csdn.net的IP地址的第一個字節大於127,因此,輸出了一個負數。而第二行由於將IP地址的每一個字節轉換成了int類型,因此,輸出了正常的IP地址。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值