import java.util.*;
public class Main {
public static void main(String[] args) {
List<Message> received = List.of(
new Message(1, "Hello!"),
new Message(2, "发工资了吗?"),
new Message(3, "去哪吃饭?"),
new Message(4, "Bye")
);
List<Message> displayMessages = process(received);
for (Message message : displayMessages) {
System.out.println(message.text);
}
static List<Message> process(List<Message> received) {
// TODO: 按sequence去除重复消息
var mesSet = new TreeSet<Message>();
for(Message mes : received){
mesSet.add(mes);
return new ArrayList<Message>(mesSet);
class Message implements Comparable{
public final int sequence;
public final String text;
public Message(int sequence, String text) {
this.sequence = sequence;
this.text = text;
@Override
public int compareTo(Object o) {
if (o instanceof Message) {
Message message = (Message) o;
if (this.sequence==message.sequence) {
return 0;
return this.sequence - (message.sequence);
IllegalArgumentException e = new IllegalArgumentException();
throw e;
Sign in to make a reply
缪哈桑
import java.util.*;
public class Main {
public static void main(String[] args) {
List<Message> received = List.of(
new Message(1, "Hello!"),
new Message(2, "发工资了吗?"),
new Message(2, "发工资了吗?"),
new Message(3, "去哪吃饭?"),
new Message(3, "去哪吃饭?"),
new Message(4, "Bye")
);
List<Message> displayMessages = process(received);
for (Message message : displayMessages) {
System.out.println(message.text);
}
}
static List<Message> process(List<Message> received) {
// TODO: 按sequence去除重复消息
var mesSet = new TreeSet<Message>();
for(Message mes : received){
mesSet.add(mes);
}
return new ArrayList<Message>(mesSet);
}
}
class Message implements Comparable{
public final int sequence;
public final String text;
public Message(int sequence, String text) {
this.sequence = sequence;
this.text = text;
}
@Override
public int compareTo(Object o) {
if (o instanceof Message) {
Message message = (Message) o;
if (this.sequence==message.sequence) {
return 0;
}
return this.sequence - (message.sequence);
}
IllegalArgumentException e = new IllegalArgumentException();
throw e;
}
}