java 怎样将整数转换成字符串时,前面加零

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎样将整数转换成字符串时,前面加零相关的知识,希望对你有一定的参考价值。

如果我想保持四位的字符串,而此字符串由int型转换而来,如:
因为先要用int型做计算,然后再转换成4位的字符串,前面用0补充.
int 9 转换成 String 0009
int 99 转换成 String 0099
int 999 转换成 String 0999
我是说如果整数在1-9之间,则转换成字符串后为000*,整数在10-99之间,则转换成字符串后为00**,整数在100-999之间,则转换成字符串后为0***.java中有没有现成的函数,自己编写程序实现就不用各位替我写了,我自己可以搞定.

  首先字符串前面加0的话,要看你需要加几个0,java的String类有个format方法可以在字符串的前面加0。形如:String.format("%07d", "str");表示整数长度为7,如果不到7位就用0填充。
  比如:String str = "hello";如果你想在hello前面加0的话,就str = String.format("%07d", str);这里的意思表示,如果str不够7位,就用0补充,得到的结果是str = "00hello";
  希望能帮到你。
参考技术A

这个问题有两种解决方案。

第一种比较中规中矩,先将整数转换成字符串,再将字符串前面加上一个“0”。代码如下:

int num = 10;
String str = String.valueOf(10);
str = "0" + str;

还有一种取巧的方法,直接用字符串加上整形数字,java会自动将他们拼接成字符串。

int num = 10;
String str = "0" + num;

参考技术B 楼上正解。呵呵,自己另写一种解法
public class Test
public static void main(String[] args)
int x=99;
String xs=String.valueOf(x);
String [] ss = "0000","000","00","0";
xs = ss[xs.length] + xs;
System.out.print(xs);

本回答被提问者采纳
参考技术C 前提是这个整数不大于9999吧,
可以先利用循环除10的方法计算出整数的位数(i),
int a=999,b,i;
b=a;(用于保存原来的数)
while(a/10!=0)
a=a/10;
i++;

然后再在整数前面循环不上4-i个0就好了。
for(int j=0;j<4-i;j++)
s=s+"0";
参考技术D public class Test
public static void main(String[] args)
int x=99;
String y=String.valueOf(x);
if(y.length()<4)
for(int i=y.length();i<4;i++)
y='0'+y;


System.out.print(y);

Java中怎样判断一个字符串是不是是数字

用java的异常机制,不仅可以判断是否是数字,还可以判断整数或者小数:
public void checkInt(String bh)
try
int num = Integer.parseInt(bh);//将输入的内容转换成int
System.out.println("是整数:"+num);//是整数
catch (NumberFormatException e) //转换成int类型时失败
try
double d =Double.parseDouble(bh);//转成double类型
System.out.println("是小数:"+d);//是小数
catch (NumberFormatException e2) //转成double类型失败
System.out.println("不是数字");


参考技术A

使用Character.isDigit(char)判断,类型转换判断,正则表达式判断都是可以的,下面以正则判断为例。

代码如下:

Numeric(String str)

Pattern pattern = Pattern.compile("[0-9]*");////+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7")   
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() )//这里作判断

return false;

return true;//只有匹配了才会执行这里

参考技术B 最简单的是使用Java系统库函数:
public static boolean isNumeric(String str)
for (int i = str.length();--i>=0;)
if (!Character.isDigit(str.charAt(i)))
return false;


return true;
参考技术C     String str = "123121233";
    System.out.println(str.matches("\\\\d+"));//true表示是数字,false表示不是

参考技术D Object instance of Number

以上是关于java 怎样将整数转换成字符串时,前面加零的主要内容,如果未能解决你的问题,请参考以下文章

java怎样将大写字母转换成小写字母

如何将字符串转换成javaBean

jquery中字符串(string)类型的数字怎样转换成整数(number)类型?

java 中如何将一个字符串转换成一个整数数组

急!VC6.0怎样把字符串转换成数据?

java中怎么将数字转换成字符串