将一串字符串进行从小到大排序

public class WrapperTest {

	/**
	 * 对一串字符串进行从小打到的排序
	 * "20 78 9 -7 88 36 29"
	 */
	private static final String space_sepa=" ";
	public static void main(String[] args) {
		String s="20 78 9 -7 88 36 29";
		
		//将字符串变成字符型的数组(分成子串)
		String[] arr=stringToArray(s);
		//将字符型数组变成int型数组
		int[] arr_num=charToInt(arr);
		//将int型数组进行排序
		arr_num=selectArray(arr_num);
		//排序后,将int数组变成字符串
		s=toStringMehtod(arr_num);
		System.out.println(s);
	}

	private static String toStringMehtod(int[] arr_num) {
		StringBuilder sb=new StringBuilder();
		for (int i = 0; i < arr_num.length; i++) {
			sb.append(arr_num[i]+space_sepa);
		}
		
		return sb.toString();
	}

	private static int[] selectArray(int[] arr_num) {
		for (int i = 0; i < arr_num.length-1; i++) {
			for (int j = i+1; j < arr_num.length; j++) {
				if (arr_num[i]>arr_num[j]) {
					swap(arr_num, i, j);
				}
			}
		}
		return arr_num;
	}

	private static void swap(int[] arr, int i, int j) {
		int temp=arr[j];
		arr[j]=arr[i];
		arr[i]=temp;
	}

	private static int[] charToInt(String[] arr) {
		int[] arr_num=new int[arr.length];
		for (int i = 0; i < arr.length; i++) {
			arr_num[i]=Integer.parseInt(arr[i]);
		}
		return arr_num;
	}

	private static String[] stringToArray(String s) {
		String[] arr=s.split(space_sepa);
		return arr;
	}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值