加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

基于两列的Java排序

发布时间:2020-12-14 16:25:15 所属栏目:Java 来源:网络整理
导读:说我有这样的表: String | Int1 | Int2 "foo" 5 0 "faa" 4 1 "zaa" 0 1 "zoo" 4 2 "laa" 4 3 "loo" 1 4 我想得到的是这样的表: String | Int1 | Int2 "foo" 5 0 "laa" 4 3 "zoo" 4 2 "faa" 4 1 "loo" 1 4 "zaa" 0 1 首先发生的事情是基于列Int1进行排序.
说我有这样的表:
String | Int1 | Int2
 "foo"    5      0
 "faa"    4      1
 "zaa"    0      1
 "zoo"    4      2
 "laa"    4      3
 "loo"    1      4

我想得到的是这样的表:

String | Int1 | Int2
 "foo"    5      0
 "laa"    4      3
 "zoo"    4      2
 "faa"    4      1
 "loo"    1      4
 "zaa"    0      1

首先发生的事情是基于列Int1进行排序.

发生的第二件事是基于列Int2,但仅在列Int1中具有相同数字的行

如何在不使用任何数据库引擎的情况下解决此问题?

解决方法

您通常会使用列表< Item>其中Item是一个包含所有三个值的类型(例如,第一行的“foo”,5,0).

然后,您将编写一个比较器< Item>比较了呈现给它的两个Item对象的Int1值,如果给出了明确的答案,则返回该答案,否则比较Int2值.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读