java把ip地址存放到一个int型变量
?
package com.zwx; public class test { public static void main(String[] args) { byte[] bt = new byte[4]; bt[0] = 111; bt[1] = 112; bt[2] = 113; bt[3] = 114; int i = byteArrayToInt(bt); System.out.println("int--->" + i); byte[] b = intToByteArrayl(i); System.out.print("ip--->"); for (byte bb : b) { System.out.print(bb + "."); } } //int转ip(字节数组) public static byte[] intToByteArrayl(int i) { byte[] result = new byte[4]; result[0] = (byte)((i >> 24) & 0xFF); result[1] = (byte)((i >> 16) & 0xFF); result[2] = (byte)((i >> 8) & 0xFF); result[3] = (byte)(i & 0xFF); return result; } //ip(字节数组)转int public static int byteArrayToInt(byte[] b) { int value = 0; for (int i = 0; i < 4; i++) { value |= b[i]; if ( i < 3 ) { value = value << 8; } } return value; } }
?
运行结果:
int--->1869640050
ip--->111.112.113.114.
?
原文:http://halloffame.iteye.com/blog/2253008