固定位数相加,位数不变

来源:互联网 发布:java笔试编程题 编辑:程序博客网 时间:2024/05/14 07:01

需求:

0000+1=0001,

0001+1=0002,

0099+1=0100

 

代码:

 

public static void main(String[] args) {StringBuffer str = new StringBuffer("0000");int count = 0;int num = 0;int oldnum = 0;for(int i = 0; i < str.length(); i++) {if(str.substring(i, i+1).equals("0")) {count++;}if(Integer.parseInt(str.substring(i, i+1))>0) {oldnum = Integer.parseInt(str.substring(i));num = Integer.parseInt(str.substring(i))+1;break;}if(i == str.length()-1 && str.substring(i, i+1).equals("0")) {num = 1;count--;}}if(str.substring(str.length()-1).equals("9")) {count = count - (String.valueOf(num).length()-String.valueOf(oldnum).length());}String newStr = "";for(int i = 0; i < count; i++) {newStr += "0";}newStr += String.valueOf(num);System.out.println(newStr);}




0 0
原创粉丝点击