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
}
}
public class Te {public static void main(String[] args) {
String[] Target = { "梅花A", "小王", "方块9", "方块K", "黑桃2", "红心3" }
sort(Target)
for (int i = 0 i < Target.length i++) {
System.out.print(Target[i]+" , ")
}
}
private static void sort(String[] target) {
final String[] sortR = { "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A", "2", "小王", "大王" }
int size = target.length
int[] temps = new int[size]
for (int i = 0 i < target.length i++) {
for (int j = 0 j < sortR.length j++) {
if (target[i].contains(sortR[j])) {
temps[i] = j
}
}
}
for (int i = 0 i < size - 1 i++) {
for (int j = 0 j < size - 1 j++) {
if (temps[j] > temps[j + 1]) {
String sesTemp = target[j]
int temp = temps[j]
temps[j] = temps[j + 1]
temps[j + 1] = temp
target[j] = target[j + 1]
target[j + 1] = sesTemp
}
}
}
}
}