ip地址划分java代码 java设置ip

用java语言,写一段代码,比较两个ip地址的大小ip地址划分java代码你好ip地址划分java代码,可以把IP去掉‘.’,然后再比较
private bool validateIP(string startIP,string endIP)
{
// 分离出ip中的四个数字位
string[] startIPArray = startIP.Split('.');
string[] endIPArray = endIP.Split('.');
// 取得各个数字
long[] startIPNum = new long[4];
long[] endIPNum = new long[4];
for (int i = 0; i4; i++)
{
startIPNum[i] = long.Parse(startIPArray[i].Trim());
endIPNum[i] = long.Parse(endIPArray[i].Trim());
}
// 各个数字乘以相应的数量级
long startIPNumTotal = startIPNum[0] * 256 * 256 * 256 + startIPNum[1] * 256 * 256 + startIPNum[2] * 256 + startIPNum[3];
long endIPNumTotal = endIPNum[0] * 256 * 256 * 256 + endIPNum[1] * 256 * 256 + endIPNum[2] * 256 + endIPNum[3];
if (startIPNumTotalendIPNumTotal)
{
return false;
}
else
{
return true;
}
}
java算法 将ip地址段拆分成一个个拆分啊,可以用下面的方法:
先定义一个String接受字符串进来 , 或者把字符串用“”括起来,然后用这个变量或者“”括起来的 , substring截取字符串,条件是第一个~~前的,用indexof,(注意截取位置不包括最后一个),把其截取出来存入你想存的地方 , 成功后把字符串截取出来的部分从原字符串中去掉,同时也把第一个~~去掉,,然后继续截取第一个~~前的,一个循环把这些括起来,然后有多少ip,截取多少次,要放数组,放数组,要放list放list,还不你说了算?/?
public class testIPSplit {
/**
* @param args
*例如58.63.239.160~~58.63.239.191变成 58.63.239.160 58.63.239.161。。。。。问题补充:
*有一个字符串的IP组:10.46.40.1--10.46.88.127,将这个ip地址段拆分为一个个ip地址 , 如
*10.46.40.1;10.46.40.2;10.46.40.3 。。。一直到10.46.88.125;10.46.88.126;10.46.88.127,
*最后将这些单个地址存入一个数组中要写一个算法
*
*
*/
public static void main(String[] args) {
String ipin="58.63.239.160~~58.63.239.191~~58.63.239.160~~58.63.239.191~~58.63.239.160~~58.63.239.191";/*定义一个字符串把你要转换的ip地址接受进来*/
System.out.println("开始时接收到的字符串是:"+ipin);
int account=0;
for(int k=0;kipin.length()-1;k++){
if("~".equals(ipin.substring(k,(k+1)))"~".equals(ipin.substring((k+1),(k+2)))){
account++;
}
}
if(!"~".equals(ipin.substring(ipin.length()-1, ipin.length()))!"~".equals(ipin.substring(ipin.length()-2, ipin.length()-1))){
account++;
}
String[] ipout=new String[account];
int i=0;
int count=0;
for(i=0;iipin.length();i++){
if(ipin!=""){
if(count1){
if(ipin.indexOf("~~")==-1 ){
count++;
ipout[i]=ipin;/*取出ip地址放入数组中*/
ipin=ipin.substring(0,ipin.length());
}
if(ipin.indexOf("~~")!=-1){
ipout[i]=ipin.substring(0,ipin.indexOf("~~"));/*取出ip地址放入数组中*/
ipin=ipin.substring(ipin.indexOf("~~")+2,ipin.length());
}
}
}
}
System.out.println("把里面的ip地址取出来后放入数组中,数组的长度是:"+ipout.length);
for(int j=0;jipout.length;j++){
System.out.println("从字符串中取出的第"+(j+1)+"个IP地址是:"+ipout[j]);
}
}
}
算了 , 本来也不是为了分才给你回答的,我花了点时间给你写了一个,我测试过,可以使用,到时候把类的名字改过来,注意下我有没有少粘贴括号的话 , 放到程序中,可以直接运行 。
对了,粘贴一下显示结果吧:

推荐阅读