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

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

问题:

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

解决方法:

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

选中某一个小写单词 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);
 }
}

运行结果:

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

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

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

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

(0)

相关推荐

  • java字符串数组进行大小排序的简单实现

    若是将两个字符串直接比较大小,会包:The operator > is undefined for the argument type(s) java.lang.String, java.lang.String的错误. 字符串比较大小可以用字符串长度或者是比较字符串内字符的ASCII码值,前者太简单,就不进行讲述记录. 字符串用ASCII码比较大小,规则是: 1.比较首字母的ASCII码大小 2.若是前面的字母相同,则比较之后的字母的ASCII码值 3.若是一个字符串从首字母开始包含另一个字符串

  • Java中的数组排序方式(快速排序、冒泡排序、选择排序)

    1.使用JavaApi文档中的Arrays类中的sort()进行快速排序 复制代码 代码如下: import java.util.Arrays; public class TestOne{ public static void main(String [] args){ int [] array={2,0,1,4,5,8}; Arrays.sort(array);//调用Arrays的静态方法Sort进行排序,升序排列 for(int show:array){ System.out.printl

  • java String[]字符串数组自动排序的简单实现

    如下所示: import java.util.Arrays; public class xulie { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String []str = {"abc","bca","cab","cba","aaa","111&

  • java字符串替换排序实例

    复制代码 代码如下: import java.util.LinkedList; public class OJ { public OJ() {  super(); } /*  * 功能:输入一行数字,如果我们把这行数字中的'5'都看成空格,那么就得到一行用空格分隔的非负整数(可能有些整数以'0'开头,这些头部的'0'应该被忽略掉  * ,除非这个整数就是由若干个'0'组成的,这时这个整数就是0). 对这些非负整数按从大到小的顺序排序.  *   * 输入: input,由0~9数字组成的字符串.

  • java数据结构与算法之插入算法实现数值排序示例

    本文实例讲述了java数据结构与算法之插入算法实现数值排序.分享给大家供大家参考,具体如下: 写在这里做个纪念,关键是要理解插入点,在插入点,初始的in和out都在这个插入点,然后通过in自减对数组进行重新排序 public static void insertSort(){ for(int out=1; out<a.length; out++){ int temp = a[out]; int in = out; while(in>0&& a[in-1]>temp){ a

  • java对double数组排序示例分享

    复制代码 代码如下: package airthmatic;public class demo10 { public static void main(String[] args) { double n[]={9,1.2,5,3.2,1.1};  orderNum(n);  } /**  * double 和 int 数字排序  * @param n  */ public static void orderNum(double []n){ for(int i=0;i<n.length-1;i++

  • Java实现对中文字符串的排序功能实例代码

    废话不多说了,直接给大家代码分享代码了. 具体代码如下所示: package test; /** * * @Title 书的信息类 * @author LR * @version . * @since -- */ public class Book { private String book_id; private String book_name; private String publishing_house; public Book(String book_id, String book_

  • java数组排序示例(冒泡排序、快速排序、希尔排序、选择排序)

    快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现. 冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来. 选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组. 插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序. 复制代码 代码如下: package com.firewolf.sort; public class MySort { /**  * @param args  */ public s

  • Java使用选择排序法对数组排序实现代码

    编写程序,实现将输入的字符串转换为一维数组,并使用选择排序法对数组进行排序. 思路如下: 点击"生成随机数"按钮,创建Random随机数对象:使用JTextArea的setText()方法清空文本域:创建一个整型一维数组,分配长度为10的空间:初始化数组元素,使用Random类的nextInt()方法生成50以内的随机数,使用JTextArea类的append()方法把数组元素显示在文本域控件中:点击"排序"按钮,使用JTextArea类的setText()方法清空

  • Java编程实现中英混合字符串数组按首字母排序的方法

    本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法.分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷的进行排序.例如: String[] arrays = new String[] { "gyu", "sdf", "zf", "大同", "收到", "地方", "三等分"

随机推荐