Discuss / Java / 交作业

交作业

Topic source

Lumen.

#1 Created at ... [Delete] [Delete and Lock User]

    static List<Message> process(List<Message> received) {

         List<Message> receive = new ArrayList<>();

        TreeSet<Message> setreceived =new TreeSet<>(new Comparator<Message>() {

            public int compare(Message p1, Message p2) {

                if (p1.sequence == p2.sequence) {

                    return 0;

                }

                return p1.sequence > p2.sequence ? 1 : -1;

            }

        });

        for( Message s : received ){

            setreceived.add(s);

        }

        for( Message s : setreceived ){

            receive.add(s);

        }

        return receive;

    }

Lumen.

#2 Created at ... [Delete] [Delete and Lock User]

        TreeSet<Message> setreceived = new TreeSet<>((p1, p2) -> Integer.compare(p1.sequence, p2.sequence));

        setreceived.addAll(received);

        return new ArrayList<>(setreceived);

这样貌似更巧妙,学习了

TOM Tom

#3 Created at ... [Delete] [Delete and Lock User]

只需写成这样就行。

TreeSet<Message> setreceived = new TreeSet<>((o1,o2) -> o1.sequence-o2.sequence);


  • 1

Reply