/*
* 1.给定一个字符串数组,按照字典顺序进行从小到大的排序
* {"nba","abc","cba","zz","qq","haha"}
*
* 思路:
* 1,对数组排序,可以用选择,冒泡法
* 2,for嵌套和比较及换位
* 3,问题:以前排序是整数,比较用的是比较运算符,可是现在是字符串,
* 可以用字符串中的compreTo()方法.
*/
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 public class StringTset { 2 3 /** 4 * @param args 5 */ 6 public static void main(String[] args) { 7 String[] arr={"nba","abc","cba","zz","qq","haha"}; 8 9 printArray(arr);//输出字符串 10 sortString(arr);//排序方法 11 printArray(arr); 12 } 13 14 public static void sortString(String[] arr) {//排序方法 15 for(int i=0;i<arr.length-1;i++){ 16 for(int j=i+1;j<arr.length;j++){ 17 if(arr[i].compareTo(arr[j])>0)//字符串比较用compareTo()方法完成 18 swap(arr, i, j);//更换字符串位置 19 } 20 } 21 } 22 23 /** 24 * @param arr 25 * @param i 26 * @param j 27 */ 28 private static void swap(String[] arr, int i, int j) {//比较后更换字符串位置 29 String temp; 30 temp=arr[i]; 31 arr[i]=arr[j]; 32 arr[j]=temp; 33 } 34 35 public static void printArray(String[] arr) {//输出字符串 36 37 System.out.print("["); 38 for(int x=0;x<arr.length;x++){ 39 if(x!=arr.length-1) 40 System.out.print(arr[x]+","); 41 else 42 System.out.print(arr[x]); 43 } 44 System.out.print("]"); 45 } 46 }