运维开发网
广告位招商联系QQ:123077622
 
广告位招商联系QQ:123077622

Java实现对字符串中的数值进行排序操作示例

运维开发网 https://www.qedev.com 2020-07-12 12:38 出处:网络 作者: 倚世独殇
本文实例讲述了Java实现对字符串中的数值进行排序操作。分享给大家供大家参考,具体如下:

本文实例讲述了Java实现对字符串中的数值进行排序操作。分享给大家供大家参考,具体如下:

问题:

对"34 9 -7 12 67 25"这个字符串中的数值从小到大排序!

解决方法:

先介绍几个eclipse快捷键:输入for再按下"alt+/"可快速写一个for循环

Java实现对字符串中的数值进行排序操作示例

选中某一个小写单词 Ctrl+Shift+x  可变大写,选中某一个大写单词 Ctrl+Shift+y  可变小写

下面请看具体实现代码:

import java.util.Arrays;
public class Main_4 {
 private static String SPACE=" ";
 public static void main(String[] args)
 {
  /*
   * 综合练习:
   * 对"34 9 -7 12 67 25"这个字符串中的数值从小到大排序
   */
  String str="34 9 -7 12 67 25";
  str=sortStringNumber(str);
  System.out.println(str);
 }
 private static String sortStringNumber(String str) {
  // 1 将字符串中的数值通过一定的规则进行切割获取字符串数组
  String[] str_nums=toStringArray(str);
  // 2 将字符串数组转换成int数组
  int[] nums=toIntArray(str_nums);
  // 3 对int数组排序
  sortIntArray(nums);
  // 4 将int数组变成字符串
  return ArrayToString(nums);
 }
 /*
  * 将int数组变成字符串
  */
 private static String ArrayToString(int[] nums) {
  // 1 创建字符串缓冲区
  StringBuilder sb=new StringBuilder();
  for (int i = 0; i < nums.length; i++) {
   if(i!=nums.length-1)
    sb.append(nums[i]+SPACE);
   else
    sb.append(nums[i]);
  }
  return sb.toString();
 }
 /*
  * 对int数组排序
  */
 private static void sortIntArray(int[] nums) {
  Arrays.sort(nums);
 }
 /*
  * 将字符串数组转换成int数组
  */
 private static int[] toIntArray(String[] str_nums) {
  // 定义一个int数组
  int[] arr=new int[str_nums.length];
  // 对字符串数组进行遍历
  for (int i = 0; i < arr.length; i++) {
   // 将数组格式的字符串转成整数,存储到arr数组中
   arr[i]=Integer.parseInt(str_nums[i]);
  }
  return arr;
 }
 /*
  * 将字符串转成字符串数组
  */
 private static String[] toStringArray(String str) {
  return str.split(SPACE);
 }
}

运行结果:

Java实现对字符串中的数值进行排序操作示例

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:

http://tools.jb51.net/aideddesign/paixu_ys

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消