——- android培训、java培训、期待与您交流! ———-
输入一int型的数字字符串 用空格间隔,从小到大排序后,以字符串返回。
“12 0 99 -7 30 4 100 13”
要求对字符串中的数值进行排序。生成一个数值从小到大新字符串。
“-7 0 4 12 13 30 99 100”
分析:
1 用split方法把字符串切割成String[]类型的数组。
2 把String[]数组转为int[]数组。
3 对int数组进行排序
4 把int数组转为字符串
import java.util.Arrays;
import java.lang.Integer;
class StringNumberSortDemo
{
public static void main(String[] args)
{
String str = "12 0 99 -7 30 4 100 13";
String str2 = stringNumberSort(str);
System.out.println(str2);
}
//把String类型的数字按升序排序
public static String stringNumberSort(String str)
{
//1 用split方法把字符串切割成String[]类型的数组
String[] strArray = str.split(" ");
//2 定义一个int[]数组
int[] array = new int[strArray.length];
//3 利用Integer.parseInt(String s)方法把String[]转为int[]
for(int i = 0;i < strArray.length;i++)
array[i] = Integer.parseInt(strArray[i]);
//4 int数组排序
Arrays.sort(array);
//5 利用StringBuilder存储
StringBuilder sb = new StringBuilder();
for(int i = 0;i < array.length;i++)
sb.append(array[i]).append(" ");
//6 转为String
return sb.toString();
}
}
运行结果
黑马程序员_日记27_JavaString类型的数字排序问题
原文地址:http://blog.csdn.net/itheima_1llt/article/details/44997391