此问题已在此处有答案:
How can I pad an integer with zeros on the left?(19回答)
2天前关闭。
我试图做一个程序,给定一个字符串,如“hi99”,它会返回“hi100”,所以基本上是在最后一个点的数字加1。
public static String incrementString(String str) {
String nonNumber = "";
String number = "";
int numberInt = 0;
for(int i = str.length() - 1 ; i >= 0 && Character.isDigit(str.charAt(i)); i--){
nonNumber = str.substring(0, i);
number = str.substring(i);
}
numberInt = Integer.valueOf(number) + 1;
number = Integer.toString(numberInt);
return (nonNumber + number);
}
我的想法是把有数字的部分和没有数字的部分分开。然后在有数字的部分加1。这就是我下面所做的。问题是,当Java看到001时,而不是在最后一个位置加1,忽略其余的。结束值是2。因此,我只是想看看是否有一种方法可以避免删除这些零。
1条答案
按热度按时间wqsoz72f1#
几年前也有过类似的任务。试试这个!