[AppleScript] 纯文本查看 复制代码
package myexam.test24;
/**
* 练习:将字符串中的数值从大到小的排序
* "20 78 9 -7 88 36 29"中间有空格
*
* @author lvshen
*
*/
public class MyTest8 {
private static final String SPACE_SEPARATOR=" ";
public static void main(String[] args) {
String str="20 78 9 -7 88 36 29";
//字符串排序
String newStr=sortStringArrays(getStringArrays(str));
//打印排序后的字符串
System.out.println(newStr);
}
/**
* 创建将字符串拆分成字符串数组的方法
* @param str 目标字符串
*/
public static String[] getStringArrays(String str){
String[] strs=str.split(SPACE_SEPARATOR);
return strs;
}
/**
* 创建一个字符串从大到小的排序方法
* @param strs 拆分成的字符串数组
*/
public static String sortStringArrays(String[] strs){
for (int i = 0; i < strs.length-1; i++) {
for(int j=i+1;j<strs.length;j++){
if(Integer.parseInt(strs)<Integer.parseInt(strs[j])){
swap(strs,i,j);
}
}
}
return printToString(strs);
}
/**
* 创建一个数组元素交换方法
* @param strs 数组
* @param i 数组元素角标
* @param j 数组元素角标
*/
private static void swap(String[] strs, int i, int j) {
String temp=strs;
strs=strs[j];
strs[j]=temp;
}
/**
* 将字符串数组转变为字符串
* @param strs 字符串数组
* @return 字符串
*/
public static String printToString(String[] strs){
//创建一个字符串存储器
StringBuilder sb=new StringBuilder();
System.out.print("\"");
for (int i = 0; i < strs.length; i++) {
if(i==strs.length-1){
sb.append(strs+"\"");
}else{
sb.append(strs+SPACE_SEPARATOR);
}
}
return sb.toString();
}
}