将int转换为带点java

时间:2016-02-28 01:33:00

标签: java

如何将int转换为带有以特定模式分隔的点的字符串?

示例:

int number = 12312300: 

会变成

"123.123.0.0";

我看过DecimalFormat并分裂,但没有成功。

编辑:

正如你们中的一些人所提到的,这是一个更详细的解释。

格式将保留为XXX.XXX.X.X。

所以前:

int number = 12312300;

转换为String:

String = "123.123.0.0";
number++;

所以下次调用该方法时,数字为:

int number = 12312301;

在转换为String时再次成为:

String = "123.123.0.1";

2 个答案:

答案 0 :(得分:-1)

使用Integer.toString(number);转换为字符串 然后,您可以使用String类的substring方法将String拆分为单独的部分。最后,您可以使用+运算符将它们一起添加。例如= ss1 +“。” + ss2 +“。”等等。

String s = Integer.toString(number);
//change this part so it matches the format you want to achieve
s = s.substring(0,2) + "." + s.substring(3,5) "." + s.substring(6,6); 

这基本上可以工作,但如果你的String不够长,substring方法将在运行时抛出异常。所以你必须先检查字符串的大小。

答案 1 :(得分:-2)

使用此功能:

public void convert()
{
    int [] num = new int[3];
    String str = null;
    int number = 123012; 
    for (int i=0; i <num.length;i++)
    {
     num[i] = number%10;
     number = number/10;
    }
    str = number+"."+num[2]+"."+num[1]+"."+num[0];
    System.out.println(str);
}