我们做一个小程序,简单实现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());
      
     }
  
  
 }

}

 

运行结果: