我們做一個小程序,簡單實現QQ發送消息的功能。
先定義一個消息類,里面有消息的屬性(來自哪里,發送到哪,消息內容)。然后定義一個測試類測試我們的運行結果,輸出發送消息的內容。測試類里面需要一個Map來存放每一個QQ號碼和與之對應的消息隊列List<Message>。
消息類:
package com.dr.QQ1;
public class Message {
private String from;
private String to;
private String content;
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
測試類:
package com.dr.QQ1;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Test {
public static void main(String[] args) {
Map<String,List<Message>> QQMap=new HashMap<String,List<Message>>();
List<Message> messageList=new ArrayList<Message>();
//第一次QQ1給QQ2發送消息
Message m=new Message();
m.setFrom("QQ1");
m.setTo("QQ2");
m.setContent("Hi");
messageList.add(m);
QQMap.put(m.getTo(), messageList);
//第二次QQ1給QQ2發送消息
m=new Message();
m.setFrom("QQ1");
m.setTo("QQ2");
m.setContent("How are you");
messageList.add(m);
QQMap.put(m.getTo(), messageList);
//QQ2來取他的消息隊列
List<Message> qq2List=QQMap.get("QQ2");
for(Message msg:qq2List){
System.out.println(msg.getContent());
}
}
}
運行結果:
