java - 2 类,按降序排列到ArrayList中

标签 java arraylist comparator

我有一个类(Card),它声明扑克牌的枚举(花色和等级)。第二个类 (Deck) 从枚举创建牌组,对它们进行洗牌并将它们插入到 ArrayList 中。

在第一个类中,我有这个类(class)/方法:

       public static abstract class descendingCards implements Comparator{
           public static ArrayList<Card> sortDescending(ArrayList<Card> cardList){
               Comparator<Card> c = Collections.reverseOrder();
               Collections.sort(cardList, c);
               return cardList;
    }
}

我的主方法类包含以下内容:

    System.out.print(Deck.newDeck());
    System.out.print("After Sorting to desending: " + "\n");
    System.out.print(Card.descendingCards.sortDescending(Deck.newDeck()));

最初,我在第一个类中创建了这套牌,并且该方法运行良好。由于我已将牌组创建移至第二类,因此我认为该方法仅返回一个空的 ArrayList。我有点困惑。我确信这是我忽略的一些小事。任何帮助,将不胜感激。谢谢。

最佳答案

解决方案非常简单,您没有调用 Deck 构造函数,而只是创建一个空的 ArrayList。 Deck 由构造函数填充,并且由于您没有调用构造函数,因此 Deck 保持为空。

关于java - 2 类,按降序排列到ArrayList中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13381034/

相关文章:

java - 在 Comparator.comparing 中转换为可序列化

java - 如何在 spring boot 中从 message_ru_RU.properties 加载俄语(西里尔字母,utf-8)文本?

java - 无法使用 facebook4j 阅读 Facebook 评论

java - 找不到java中以下方法的错误

Java在arraylist中排序数字

java - 这个符号在 Java 中意味着什么? (比较器<?super T> c)

java - Java 中的迭代器和哈希表

java - Thread.sleep() 在其他语句之前暂停 JFrame

java - 随机播放列表(某些序列除外)

java - Java ArrayList 中的名称排序?