java对姓名+电话号码进行排序 Arrays.sort(charArray) + 冒泡排序

1、方法一

package sortTest01;

import java.util.Arrays;

public class sortTest {
    public static void main(String[] args) {
        //从小到大进行排序的
        //姓名+手机号进行排序   eg:zhangsan123456
        String strs="bailang15733168236";
        char[] charArray = strs.toCharArray();
        Arrays.sort(charArray);
        //字符数组  按照每个字符来遍历输出
        for(int i =0;i<charArray.length;i++) {
           System.out.print(charArray[i]);
        }    
    }
}

2、方法二

package sortTest02;
public class maoPao {
    public static void main(String[] args) {   
        String strs="bailanglang15733168236";
        //将strs字符串转换为字符数组
        char[] charArray = strs.toCharArray();
        //对字符数组进行冒泡排序
        bubbleSort(charArray);
        //对排序后的字符数组进行转换为新的字符串进行输出
        String strsNew = strs.valueOf(charArray);
        System.out.println(strsNew);
    }
    //冒泡排序的算法   上面进行调用
    private static void bubbleSort(char[] charArray) {
        /*
         * 冒泡排序的算法思想  :从前到后两两比较,大的在后面。每趟排序输出最大的一个数 ,
         * 下一趟排序就只在长度-1个数内交换,  一直重复直至排序完成 
         * */
        for(int i=0;i<charArray.length;i++) {
            for(int j=0;j<charArray.length-1-i;j++) {
                if(charArray[j] > charArray[j+1]) {
                    char temp = charArray[j];
                    charArray[j] = charArray[j+1];
                    charArray[j+1] = temp;    
                }
            }
        }
    }
}

 

posted @ 2020-10-12 22:53  BAILANGL  阅读(545)  评论(0编辑  收藏  举报