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. C#实现根据IP 查找真实地址

    IPScanner.cs public class IPScanner { private byte[] data; Regex regex = new Regex(@"(((\d{1,2} ...

  2. Git 使用的想法

    git rebase 每个提交(commit)取消掉,并且把它们临时 保存为补丁(patch)(这些补丁放到".git/rebase"目录中),然后 git fetch origi ...

  3. 在Hyper-V的虚拟机中使用无线网络

    今天在WINDOWS 8.1中装了WINDOWS 7的虚拟机,但默认情况下只能共享有线网络,而没有无线网络. 解决方法: http://www.elmajdal.net/Win2k8/Enabling ...

  4. MS SQL 多连接数时修改数据库名称

    在MS SQL中,如果你想修改某一个数据库的名称,你可以通过下面几种方法实现. 方法一:使用SP_RENAMEDB系统存储过程实现. 语法: sp_renamedb [ @dbname = ] 'ol ...

  5. 从零开始攻略PHP(9)——错误和异常处理

    1.Exception类 这个类是PHP为异常处理提供的内置类.构造函数的两个参数分别是错误消息和错误代码. 除了构造函数之外,该类还提供了如下的内置方法: · getCode() 返回传递给构造函数 ...

  6. C++Primer 第十四章

    //1.当运算符作用于类类型运算对象时,可以通过运算符重载重新定义该运算符的含义.明智的使用运算符重载能令程序更加易于编写和阅读. //2.重载的运算符是具有特殊名字的函数,它们由关键字operato ...

  7. PostgreSQL 中定义自己需要的数据类型

    PostgreSQL解决某系数据库中的tinyint数据类型问题,创建自己需要的数据类型如下: CREATE DOMAIN tinyint AS smallint CONSTRAINT tinyint ...

  8. c语言的基本语法

    1. 二目运算符从右往左 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右   () 圆括号 (表达式)/函数名(形参表)   . 成员选择(对象 ...

  9. C++之路进阶——bzoj1455(罗马游戏)

    F.A.Qs Home Discuss ProblemSet Status Ranklist Contest ModifyUser  gryz2016 Logout 捐赠本站 Notice:由于本OJ ...

  10. springday05-go1

    新建web工程spring-netcross1.导入spring文件夹里的七个jar包,另外还要导入jdbc-lib的四个jar包,ojdbc.jar,commoms-pool,commons-dbc ...