import java.util.HashMap;
import java.util.Iterator;
import java.util.Map; /*
* 完成消息的发送功能
* 在发送消息之前,首先选择联系人所在的组(本案例分三组:好友组,亲人组,同事组)
* 然后输入接收人的昵称;最后输入要发送的消息
* @2016.11.1,
*/
public class Message1 {
private String content;
private String name;
public static Map<Integer,String[]> map=new HashMap<Integer,String[]>();
public Message1(String content,String name){
this.name=name;
this.content=content;
}
public static void getMap(){
String[] friends={"岁月如歌","人生如梦","填方叶檀","心在旅途","我心飞扬"};
String[] relativesStrings={"岁月","人生","填方","旅途","飞扬"};
String[] colleagues={"张三","李四","王五","孙六"};
map.put(1, friends);
map.put(2, relativesStrings);
map.put(3, colleagues);
}
public static void nameList(int num){
getMap();
Iterator iterater=map.keySet().iterator();
while(iterater.hasNext()){
int key=(Integer) iterater.next();
if(key==num){
for(int i=0;i<map.get(key).length;i++){
System.out.println(map.get(key)[i]);
}
}
}
}
public static boolean validateName(int num,String name){
boolean flag=false;
Iterator iterater=map.keySet().iterator();
loop:while(iterater.hasNext()){
int key=(Integer) iterater.next();
if(key==num){
for(int i=0;i<map.get(key).length;i++){
if(name.equals(map.get(key)[i])){
flag=true;
break loop;
}
}
}
}
return flag;
}
public void printMsg(){
System.out.println("我:\n"+content);
}
} import java.util.Scanner; public class Message2 { /**
* @param args
*/
public static void main(String[] args) {
System.out.println("1:好友组\n2:亲人组\n3:同事组");
System.out.println("请选择接收消息者所在的分组编号:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
Message1.nameList(num);
System.out.println("请输入接收消息者的昵称:");
String name=sc.next();
boolean flag1=Message1.validateName(num, name);
if(flag1){
System.out.println("请输入消息内容:");
String content=sc.next();
Message1 message=new Message1(content, name);
message.printMsg();
}else{
System.out.println("您输入的昵称不存在");
}
}
public static double methord(byte x,double y){
return (short)x/y*2;
}
}
1:好友组
2:亲人组
3:同事组
请选择接收消息者所在的分组编号:
1
岁月如歌
人生如梦
填方叶檀
心在旅途
我心飞扬
请输入接收消息者的昵称:
人生如梦
请输入消息内容:
你好毒
我:
你好毒

java 模拟消息的发送功能的更多相关文章

  1. java模拟post请求发送json

    java模拟post请求发送json,用两种方式实现,第一种是HttpURLConnection发送post请求,第二种是使用httpclient模拟post请求, 方法一: package main ...

  2. Java模拟POST请求发送二进制数据

    在进行程序之间数据通信时我们有时候就需要自定义二进制格式,然后通过HTTP进行二进制数据交互.交互的示例代码如下: public static void main(String[] args) { S ...

  3. java模拟post请求发送json数据

    import com.alibaba.fastjson.JSONObject; import org.apache.http.client.methods.CloseableHttpResponse; ...

  4. Java 实现 HtmlEmail 邮件发送功能

    引言 在平常的企业级应用开发过程中,可能会涉及到一些资讯通知需要传达,以及软件使用过程中有一些安全性的东西需要及早知道和了解,这时候在局域网之间就可以通过发送邮件的方式了.以下就是代码实现了: pac ...

  5. java模拟异步消息的发送与回调

      http://kt8668.iteye.com/blog/205739 本文的目的并不是介绍使用的什么技术,而是重点阐述其实现原理. 一. 异步和同步 讲通俗点,异步就是不需要等当前执行的动作完成 ...

  6. 使用Java语言开发微信公众平台(四)——图文消息的发送与响应

    在上一篇文章中,我们实现了被关注回复与关键词回复功能.在用户关注的时候自动推送功能菜单,并根据用户输入的关键词,回复特定信息.但是,我们只能回复文本消息给用户,如何才回复一条图文消息呢?本周,我们一起 ...

  7. Java基础知识强化之IO流笔记53:IO流练习之 自定义类模拟BufferedReader的readLine()功能案例

    1. 用Reader模拟BufferedReader的readLine()功能:   readLine():一次读取一行,根据换行符判断是否结束,只返回内容,不返回换行符 2. 代码实现和思路分析: ...

  8. nodejs 数据库操作,消息的发送和接收,模拟同步

    var deasync = require('deasync'); //导入模板 var mysql=require('mysql'); var Stomp = require('stompjs'); ...

  9. JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架)

    JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架) 本来想实现 QQ 登录,有域名一直没用过,还得备案,好麻烦,只能过几天再更新啦. 先把实现的发送邮箱验证码更能更新了. 老规矩,更多内容在注释 ...

随机推荐

  1. Vue.2.0.5-计算属性

    计算属性 在模板中绑定表达式是非常便利的,但是它们实际上只用于简单的操作.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example"> { ...

  2. debug 使用lldb

    http://www.zddhub.com/memo/2015/12/20/lldb-golang-debug/ go build -gcflags "-N -l" -o test ...

  3. C# (事件触发)回调函数,完美处理各类疑难杂症!

    每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客! 废话说多了...... 嘿嘿:本篇标题为:C#  (事件触发)回调函数,完美处理各类疑难杂症.个人理解如下:事件触发也就是触 ...

  4. css 正方体

    <!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf ...

  5. winner tree 胜者树

    在树形选择排序中,利用锦标赛思想建立的树称为胜者树. 1.每个非终端节点存储的是左右孩子节点中的优胜者. 2.通过减少比较次数,提高效率. 3.胜者树就是一颗特殊的线段树. 一.构建树 Procedu ...

  6. ubuntu14.04安装eclipse

    1.安装jdk7.x,参考上篇<Linux14.04安装JDK> 2下载eclipse.tar 3.sudo tar -zxvf eclipse-x-x-.tar.gz mv eclips ...

  7. PostgreSQL Performance Monitoring Tools

    PostgreSQL Performance Monitoring Tools https://github.com/CloudServer/postgresql-perf-tools This pa ...

  8. Summary: Process & Tread

    refer to http://www.programmerinterview.com/index.php/operating-systems/thread-vs-process/ A process ...

  9. 使用Mysql修改密码命令更改root的密码

    使用Mysql修改密码命令更改root的密码. 进入Mysql数据库命令行方式有两种方式: 方式一:在Mysql开始菜单里包含Mysql命令行客户端,只要点击输入root的密码即可进入. 方式二:在D ...

  10. yii2封装一个类控制div宽度,高度

    1.首先,封装一个类,放在文件夹vendor下,命名为articls.php. <?phpclass Articles{ //测试    function add()    {        r ...