基于两列的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 la

说我有这样的表:

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值.

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部