我們做一個小程序,簡單實現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());
      
     }
  
  
 }

}

 

運行結果: