您的位置:首页 > 编程语言 > Java开发

java基础—对一个字符串中的数值进行从小到大的排序

2015-06-18 16:35 633 查看

对一个字符串中的数值进行从小到大的排序

例如:

String s = "8 96 88 58 44 52 12 13 39 96 6";


public class SortIntToStringDemo
{
// 对一个字符串中的数值进行从小到大的排序。
public static void main(String[] args)
{

String s = "8 96 88 58 44 52 12 13 39 96 6";
//调用自定义方法将字符串中的数字进行排序
sortString(s);
}
//创建将字符串中的数据进行排序的方法
private static void sortString(String s)
{
//
//System.out.println("sortSting 启动");
//将字符串进行分割,转成字符串数组
String[] c = s.split(" ");
int[] arr = new int[c.length];
for(int i =0;i<c.length;i++)
{
//将字符串中的元素转成int数据类型并储存到int数组中去
arr[i]= Integer.parseInt(c[i]);
}
//对int数组中的元素进行排序
sortIntArray(arr);
//将int数组转换为字符串输出
intArrayToString(arr);

}

//将int数组中的元素转成字符串并输出
private static void intArrayToString(int[] arr)
{
//System.out.println("intArayToStirng启动");
// TODO Auto-generated method stub
StringBuilder sb = new StringBuilder();
sb.append("[ ");
for(int i =0;i<arr.length;i++)
{
if(i!=arr.length-1)
{
sb.append(arr[i]+" ");
}
if(i==arr.length-1)
{
sb.append(arr[i]+" ]");
}
}
System.out.println(sb);

}
//对int数组进行排序
private static void sortIntArray(int[] arr)
{
//System.out.println("sortInArray启动");
for(int i =0;i<arr.length-1;i++)
{
for(int j=i+1;j<arr.length;j++)
{
if(arr[i]>arr[j])
swap(arr,i,j);
}
}
}
//对数据进行交换
private static void swap(int[] arr,int i, int j) {
//System.out.println("swap启动");
int temp = arr[i];
arr[i] = arr[j];
arr[j]= temp;
}

}


运行程序:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: