当前位置: 首页 > 面试题库 >

如何使用多个排序条件对ArrayList进行排序?

金晗日
2023-03-14
问题内容

我有一个包含Quote对象的数组列表。我希望能够按名称,更改和更改百分比的字母顺序进行排序。如何排序我的数组列表?

package org.stocktwits.model;

import java.io.Serializable;
import java.text.DecimalFormat;

    public class Quote implements Serializable {

        private static final long serialVersionUID = 1L;

        public String symbol;
        public String name;
        public String change;
        public String percentChange;
        public String open;
        public String daysHigh;
        public String daysLow;
        public String dividendYield;
        public String volume;
        public String averageDailyVolume;
        public String peRatio;
        public String marketCapitalization;
        public String yearHigh;
        public String yearLow;
        public String lastTradePriceOnly;
        public DecimalFormat df = new DecimalFormat("#,###,###,###,###,##0.00");
        public DecimalFormat vf = new DecimalFormat("#,###,###,###,###,##0");

        public String getSymbol() {
            return symbol;
        }
        public void setSymbol(String symbol) {
            this.symbol = symbol;
        }
        public String getName() {
            return name;
        }

问题答案:

创建一个合适的对象Comparator,它将根据你所需的条件比较两个项目。然后Collections.sort()在你的ArrayList上使用 。

如果以后要按其他条件排序,请Collections.sort()使用不同的再次调用Comparator



 类似资料:
  • 问题内容: 我在Java中有一个双打列表,我想按降序对ArrayList进行排序。 输入如下: 输出应该是这样的 问题答案: 那会做你想要的。请记住要导入!

  • 问题内容: 我有可能需要按1-n键排序的大文件。其中一些键可能是数字键,有些则可能不是数字键。这是一个固定宽度的柱状文件,因此没有定界符。 有没有一种很好的方法可以用Unix排序呢?使用一个键,就像使用“ -n”一样简单。我已经阅读了手册页并简短地搜索了Google,但是没有找到一个很好的例子。我将如何实现这一目标? 注意:由于文件大小可能,我排除了Perl。这将是不得已的办法。 问题答案: 使用

  • 问题内容: 我有一个对象数组: 联系人类别: 而且我想通过该数组进行排序,然后在某些情况下接触得到了相同的。 我可以按其中一个条件进行排序,但不能同时按两个条件进行排序。 我如何添加更多条件来对该数组进行排序? 问题答案: 想一想“按多个标准排序”是什么意思。这意味着首先通过一个条件比较两个对象。然后,如果这些条件相同,则领带将被下一个条件破坏,依此类推,直到获得所需的排序。 您在这里看到的是me

  • 问题内容: 我有一个成员数组/切片: 我的问题是如何按,然后按。 问题答案: 使用sort.Slice(从Go 1.8开始可用)或sort.Sort函数对值的切片进行排序。 通过这两个功能,应用程序提供了一个功能,用于测试一个切片元素是否小于另一个切片元素。要按姓氏和名字排序,请比较姓氏和名字: less函数是使用带有sort.Slice的匿名函数指定的: less函数通过带有sort.Sort函

  • 我想写一个查询,它将根据多个条件对结果进行排序。 请参考下表 我想在表上方排序 1-通过已知域后跟然后Rest。 所以我想把结果行分成三部分。 第一部分的行具有作为域,然后在第二部分的行中,最后剩下的行具有域。 2-按字母顺序排列,所有特殊字符位于末尾。 每个部分都应该在字段上按字母顺序进一步排序,末尾有特殊字符。 结果应如下表所示。 我已经用下面的查询按字母顺序对结果进行排序,底部有特殊符号,但

  • 问题内容: 我有一个对象的ArrayList。该对象包含属性和。所以我想对上的对象进行排序,对于同一日期的所有对象,我想对其进行排序。我怎样才能做到这一点? 问题答案: 实施自定义,然后使用。它可能看起来像这样: