一、题目要求

  • 模拟实现Linux下Sort -t : -k 2的功能。
  • 要有伪代码,产品代码,测试代码(注意测试用例的设计)
  • 参考 Sort的实现。提交博客链接。

二、设计思路

  • 在命令行中输入需要的参数;
  • 使用split方法将每一行分解获得需要的可供排序的数组;
  • 对获得的数组排序;
  • 将排序后的数组输出。

三、代码实现

  • 伪代码:

    • 输出排序前的数组;
    • 命令行输入参数;
    • 判断参数是否符合要求;
    • 对排序好的数组遍历并输出第二列元素相同的toSort数组。
  • 产品代码:

    import java.util.*;
    public class MySort {
    public void mySort(String[] toSort, int k) {
    System.out.println("Before sort:");
    for (String str : toSort) {
    System.out.println(str);
    }
    int length = toSort.length;
    int[] a = new int[length];
    if (k == 1) {
    for (int i = 0; i < length; i++) {
    a[i] = Integer.parseInt(toSort[i].split(":")[k]);
    }
    }
    Arrays.sort(a);
    System.out.println("After sort:");
    for (int i = 0; i < length; i++) {
    for (int j = 0; j < length; j++) {
    if (a[i] == Integer.parseInt(toSort[j].split(":")[k])) {
    System.out.println(toSort[j]);
    }
    }
    }
    }

}


- 测试代码:

public class MySortTest {

public static void main(String[] args) {

String[] toSort = {"aaa:10:1:1",

"ccc:30:3:4",

"bbb:50:4:5",

"ddd:20:5:3",

"eee:40:2:20"};

int a = Integer.parseInt(args[0]);

MySort mysort = new MySort();

mysort.mySort(toSort, a);

}

}


## 四、测试结果截图
![](https://img2018.cnblogs.com/blog/1592121/201905/1592121-20190519154155074-1884191996.png) ## 五、码云链接 [码云链接](https://gitee.com/fzlzc/java2019/commit/fe575839f2f213be22e4964de9f46d81e5809c37)

最新文章

  1. JAVA基础知识xml,date
  2. qweb
  3. Android 数据传递(二)Activity与fragment之间的通信
  4. nginx-upload-module模块实现文件断点续传
  5. 【高级JEE技术】JMS
  6. 短信验证码js实现
  7. Apache虚拟主机的配置
  8. 媒体查询Media Queries详解
  9. python 基础一
  10. angular的一些东西
  11. 流畅的python笔记
  12. React中的“双向绑定”
  13. linux中一些简便的命令之cut
  14. UltraISO 9.7.0.3476中文完美破解安装版
  15. 如何删除WINDOWS中服务中不再使用的服务?
  16. Python3 tkinter基础 Button text,fg 按钮上显示的文字 文字的颜色
  17. python re正则
  18. JDK 之 Java Bean 内省机制
  19. 2016年3月31日_应化所群体Review
  20. Scrapy持久化存储

热门文章

  1. Qtspim和MIPS的坑
  2. O051、Create Volume 操作 (Part II)
  3. LNMP安装与配置之MySQL
  4. QTP(6)
  5. Rectangle Puzzle CodeForces - 281C (几何)
  6. 浅入深出Vue:文章列表
  7. UVa156 Ananagrams(映射map)
  8. Systemd-journalctl日志管理
  9. (七)zabbix监控nginx
  10. pycharm运行程序,总是出现IPthony界面(IPython 6.2.1 -- An enhanced Interactive Python. Type &#39;?&#39; for help. PyDev console: using IPython 6.2.1)