编写一个java程序对一个字符串数组进行排序

Python020

编写一个java程序对一个字符串数组进行排序,第1张

import java.util.Arrays

public class StringDateSort {

public static void main(String[] args) {

String numString="23 10 -8 0 3 7 108"

String sortStr=sortNumberString(numString)

System.out.println("排序的结果是"+sortStr)

}

private static String sortNumberString(String numString) {

//1.将给定的字符串分解成多个数字格式字符串

String[] numStrings=toStringArray(numString)

//2.将字符串数组转成int数组

int[] nums=toIntArray(numStrings)

//3.对数组排序

sort(nums)

//4.将int数组转成字符串

return toString(nums)

}

private static String toString(int[] nums) {

StringBuffer stringBuffer=new StringBuffer()

for (int i = 0 i < nums.length i++) {

if (i!=nums.length-1) {

stringBuffer.append(nums[i]+"<")

}else{

stringBuffer.append(nums[i])

}

}

return stringBuffer.toString()

}

private static void sort(int[] nums) {

Arrays.sort(nums)

}

private static int[] toIntArray(String[] numStrings) {

int[] nums=new int[numStrings.length]

for (int i = 0 i < numStrings.length i++) {

String s=numStrings[i]

nums[i]=Integer.parseInt(s)

}

return nums

}

private static String[] toStringArray(String numString) {

String[] numberStr=numString.split(" ")

for (int i = 0 i < numberStr.length i++) {

System.out.println("抽出数字"+numberStr[i])

}

return numberStr

}

}

import Java.util.Arrays

public class xulie {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

String []str = {"abc","bca","cab","cba","aaa","111","232","112","ABC"}

Arrays.sort(str)

for(int i=0i<str.lengthi++){

System.out.println(str[i])

}

}

}

希望可以帮到你

自己封装的一个工具类,可以将汉字按照拼音的首字母排序,支持对Model和字典排序.只能对首字母排序,不支持第二个字母, 实现的原理就是创建一个A-Z的数组,数组中的元素是字典,字典中有两个元素,一个是title,就是当前的首字母 A-Z中的一个,另一个是保存当前title对应的元素的数组,对传入的数组进行遍历获得数组中的一个元素,如果是Model或者字典通过传入的key的值获得要排序的字符串,获得字符串的拼音的首字母,判断拼音的首字母是A-Z中的哪一个,然后放到数组中的对应的字典的数组中.

后来又做了一个对英文的首字母排序的程序,原理和上面的一样,还省略了将汉字转化为拼音的步骤。工具类的名称是:NH_OrderByPinYinFirstLetter。

代码:使用的时候直接调用下面的方法就行,是一个加号方法,第一个参数是保存要排序的元素的数组,第二个参数:如果数组中是Model或者字典,就写排序的依据的key值,如果数组中不是Model或字典,就写nil。

[objc] view plain copy

// 方法

+ (NSMutableArray *)baseOrderPinYinOnArr:(NSMutableArray *)arr ByKey:(NSString *)key  返回值的类

// 返回一个有24个元素的数组,数组里的元素是字典

// 字典里有两对键值对

//    title : 当前的拼音首字母 A - Z

// datas : 当前的拼音首字母对应的model所组成的数组