返回相同长度的数字字符串。例
numlncre(“000000”)=>“000001”
numlncre(“0023”)=>“0024”
numlncre(“0009”)=>“0010”
numlncre(“000099”)=>“000100”
numlncre(“9”)=>“0”//数字可循环再用程序接口
  public static String numlncre(String num)

解决方案 »

  1.   


    public static String numlncre(String num){
    String result = "";
    String str = "";
    for(int i=0;i<num.length();i++){
    if("0".equals(num.indexOf(i))){
    continue;
    }else{
    str = num.substring(i);
    int j = Integer.parseInt(str);
    result = String.valueOf(j+1);
    break;
    }
    }
    int length = num.length()-result.length();
    StringBuffer sb = new StringBuffer();
    if(length>0){
    for(int j=0;j<length;j++){
    sb.append("0");
    }
    }
    sb.append(result);
    return sb.toString();
    }
      

  2.   

    public static String numlncre(String num){

    StringBuffer result = new StringBuffer();
    int spit = num.lastIndexOf('0');
    String sub1 = num.substring(0, spit+1);
    String sub2 = num.substring(spit+1);
    int intSun2 = Integer.parseInt(sub2)+1;
    if((""+intSun2).length()>sub2.length()){
    result.append(sub1.substring(0,sub1.length()-1)).append("1");
    for(int i=0;i<sub2.length();i++){
    result.append("0");
    }
    }else{

    result.append(sub1).append(""+intSun2);
    }
    return result.toString();
    }
      

  3.   


    public static String numlncre(String num)
    {
    //用数组保存0的个数
    char[] chars = num.toCharArray();
    //值+1
    String value =String.valueOf(Integer.parseInt(num)+1);
    //将N个0和值拼接
    String str = new String(chars,0,value.length()-chars.length)+value;
    //长度可能超出,进行截取
    return str.substring(str.length()-num.length());
    }
      

  4.   


    public static String numlncre(String num)
    {
    int idx = num.lastIndexOf('0');
    String zero = num.substring(0,idx+1);
    String value = String.valueOf(Integer.parseInt(num)+1);
    String result = zero+value;
    return result.substring(result.length()-num.length());
    }
      

  5.   

    5楼的代码不能处理0010这种字符串,现小小的改进了一下
    public static String numlncre(String num)
        {
      String xin="";
           if(num.charAt(num.length()-1)!='0'){ 
            int idx = num.lastIndexOf('0');
            String zero = num.substring(0,idx+1);
            String value = String.valueOf(Integer.parseInt(num)+1);
            String result = zero+value;
            xin=result.substring(result.length()-num.length());
           }
           else{
            String st=num.substring(num.length()-1);
            String zero = num.substring(0,num.length()-1);
            String value=String.valueOf(Integer.parseInt(st)+1);
            xin=zero+value;
           }
           return xin;
        }