冒泡排序算法 排序 数字字符串,并返回排序后的字符串

来源:互联网 发布:充值软件多少钱 编辑:程序博客网 时间:2024/06/05 11:27
package com.tianwen;

public class WzhTest {

    /**
     * @param args
     */
    public static void main(String[] args) {

        String str="2,1,0,3";
        str="A2-B1,A0-B2,A1-B3,A3-B0";
        String newStr=sortStringToArray(str);
        System.out.println("排序后的字符串:"+newStr);
        
    }
    
    /**
     * 冒泡排序算法 排序 数字字符串,并返回排序后的字符串
     * @param str
     * @return
     */
    
    public static String sortStringToArray(String str){
        if(null==str||"".equals(str)){
            return str;
        }
        String[] arrStr=str.split(",");
        if(arrStr.length<2){
            return str;
        }
        if(!isNum(arrStr[0])){
            return str;
        }
         String temp;
          for (int i = 0; i < arrStr.length; i++) {
           for (int j = arrStr.length - 1; j > i; j--) {
            if (Integer.valueOf(arrStr[i]) >Integer.valueOf(arrStr[j])) {
             temp = arrStr[i];
             arrStr[i] = arrStr[j];
             arrStr[j] = temp;
            }
           }
          }
         StringBuffer sb=new StringBuffer();
          for(int k=0;k<arrStr.length;k++){
              sb.append(arrStr[k]);
              if(k<arrStr.length-1){
                  sb.append(",");
              }
          }
        return sb.toString();
    }
    
    public static boolean isNum(String str){
        return str.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$");
    }
}

0 0
原创粉丝点击