字符串格式化问题

sixfish 2007-09-20 09:32:56
我想把输出的数字,如果是1位的,格式化成两位,两位的不变
比如,1变成01,2变成02,10不变
是用format么,怎么用?
...全文
119 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sixfish 2007-09-20
  • 打赏
  • 举报
回复
String.format("%1$02d", str)

我是这么做的,也好用
谢谢大家
  • 打赏
  • 举报
回复
JDK 1.5 以上版本:
int num = 1;
String str = String.format("%02d", num);

JDK 1.5 以下版本:
DecimalFormat df = new DecimalFormat("00");
int num = 2;
String str = df.format(num);
aniude 2007-09-20
  • 打赏
  • 举报
回复
最简单应该是正则表达式吧:(
String number = "2";
System.out.println(number.replaceAll("^([1-9])$", "0$1"));
livan1038 2007-09-20
  • 打赏
  • 举报
回复
/**
* 在字串的左邊補0
* @param str 要補0的字串
* @param len 補0后的字串的長度
* @return 補0后的字串
*/
protected String Padl(String str, int len) {
int lenStr = str.length();
StringBuffer sb = new StringBuffer(str);
while (lenStr < len) {
sb.insert(0, "0");
lenStr++;
}
return sb.toString();
}
guorujian 2007-09-20
  • 打赏
  • 举报
回复
最简单的方法:(i只是为了取值,你可以根据你自己的数据进行输出!我想用不着那么麻烦)
for(int i = 0;i<100;i++)
{
if(i<10) System.out.println("0"+i);
if(i>9) System.out.println(i);
}
  • 打赏
  • 举报
回复
只有一个参数的话可以不要用“1$”的。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧