有趣的字符串排序程序设计

首页 » 技术栈 » 有趣的字符串排序程序设计

任务描述

编写一个字符串排序程序,对一个字符串中的数值进行从小到大的排序,例如字符串为"16 29 98 7 36 -9 -10",排序后的字符串为"-10 -9 7 16 29 36 98"。要求使用包装类对数值类型的字符串转换成整型进行排序。

实现思路

1.将字符串变为字符串数组;

2.将字符串数组变成int数组;

3.对int数组进行排序;

4.将排序后的int数组变成字符串

实现代码

import java.util.Arrays;

public class StringSort {
private static final String SPACE_SEPARATOR = " ";
public static void main (String[] args) {
String numStr = "16 29 98 7 36 -9 -10";
System.out.println("排序前的字符串:" + numStr);
numStr = sortStringNumber(numStr);
System.out.println("排序后的字符串:" + numStr.toString());
}
public static String sortStringNumber(String numStr) {
//1.将字符串变为字符串数组
String[] str_arr = stringToArray(numStr);
//2.将字符串数组变成int数组
int[] num_arr = toIntArray(str_arr);
//3.对int数组进行排序
mySortArray(num_arr);
//4.将排序后的int数组变成字符串
String temp = arrayToString(num_arr);
return temp;
}
//将字符串变成字符串数组
public static String[] stringToArray(String numStr) {
String[] str_arr = numStr.split(SPACE_SEPARATOR);
return str_arr;
}
//将字符串数组变成int数组
public static int[] toIntArray(String[] str_arr) {
int [] arr = new int[str_arr.length];
for(int i=0;i< str_arr.length;i++) {
arr[i] = Integer.parseInt(str_arr[i]);
}
return arr;
}
//对int数组进行排序
public static void mySortArray(int[] num_arr) {
Arrays.sort(num_arr);
}
//将排序后的int数组变成字符串
public static String arrayToString(int[] num_arr) {
StringBuffer sb =new StringBuffer();
for(int i=0;i<num_arr.length;i++) {
if(i !=num_arr.length -1) {
sb.append(num_arr[i] + " ");
} else {
sb.append(num_arr[i]);
}
}
return sb.toString();
}
}


打赏 赞(1)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

大家好!欢迎光临我的博客,在下就是闭月羞花沉鱼落雁才高八斗貌似天仙玉树凌风赛潘安一枝梨花压海棠人送外号上天下地无所不能美貌与智慧并存、古典与活泼的化身~~
觅·You小栈» 有趣的字符串排序程序设计

版权声明: 本站原创文章,于2016年08月05日由觅·You发布,转载请注明出处

该篇文章的评论功能已被站长关闭

亭边总有花影,与我消遣一段旖旎的小时光

立即查看 联系作者
正在获取,请稍候...
00:00/00:00