1. 程式人生 > >對數字型字串按照數字大小進行排序

對數字型字串按照數字大小進行排序

題目:對數字型字串按照數字大小進行排序

示例:
輸入字串str1值: 11 23 -32 88 0 -228 99 29 560 33
輸出結果:-228 -32 0 11 23 29 33 88 99 560

實現程式碼:

import java.lang.reflect.Array;
import java.util.Arrays;
public class Test {
    public static void main(String[] args) { 
         String str1 = "11 23 -32 88 0 -228 99 29 560 33"
; System.out.println(str1); str1 = stringToIntSort(str1); System.out.println(str1); } private static String stringToIntSort(String str1) { String[] arr1 =stringToArray(str1);//字串變成字串陣列 int[] m = stringArrayToInt(arr1);//字串陣列變成int陣列 sortIntArray(m);//對int陣列進行排序
String str2 = intArrayToString(m);//將int陣列變成字串 return str2; } public static String intArrayToString(int[] m) { StringBuffer sb = new StringBuffer(); for(int i = 0;i<m.length;i++){ if(i!=m.length) sb.append(m[i]+" "); else
sb.append(m[i]); } return sb.toString(); } public static void sortIntArray(int[] m) { Arrays.sort(m); } public static int[] stringArrayToInt(String[] arr1) { int[] arr2 = new int[arr1.length]; for(int i = 0;i<arr1.length;i++){ arr2[i] = Integer.parseInt(arr1[i]); } return arr2; } public static String[] stringToArray(String str1) { return str1.split(" "); } }

執行結果:
11 23 -32 88 0 -228 99 29 560 33
-228 -32 0 11 23 29 33 88 99 560