-
Notifications
You must be signed in to change notification settings - Fork 0
java——operate
殷泽凌 edited this page Mar 29, 2019
·
2 revisions
关于operate的返回类型,支持两种类型,分别为void与Object,即无论返回任何类型都会被接受
对于Object的处理,采取toString()的方式,无论返回任何对象,将会把这个对象的toString结果进行处理
//字符串
//当你在群里发hello bang的时候,机器人会回复你一句hello bang!!!
public class HelloBang{
public String check(){
return "hello bang";
}
public String operate(){
return "hello bang!!!";
}
}
//null类型
//当你在群里发hello bang的时候,不会做出任何回应,因为null是不作为
public class HelloBang{
public String check(){
return "hello bang";
}
public String operate(){
return null;
}
}
//void类型
//当你在群里发hello bang的时候,不会做出任何回应,返回类型是void,operate方法会调用但是不会发生任何的信息处理
public class HelloBang{
public String check(){
return "hello bang";
}
public void operate(){
}
}
关于参数,方法支持以下参数类型,与check语法相同
//没有参数,正常调用
operate();
//传递一个字符串,内容为群里要被处理的消息内容
operate(String msg);
//传递一个map,为HttpAPI的原生数据,该data可以转换为fastjson的JSONObject
operate(Map<String,Object> data);
//传递两个参数,第一个参数为当前信息的成员的QQ号码,第二个参数为要被处理的消息内容
operate(String userID,String msg);
//传递两个参数,第一个参数为当前信息的成员的QQ号码,第二个参数为要被处理的消息内容
operate(int userID,String msg);
//传递两个参数,第一个参数为当前信息的成员的QQ号码,第二个参数为要被处理的消息内容
operate(long userID,String msg);
注意的是,operate传递QQ号与消息内容的参数是不能交换的,因为和参数名无关,只与参数顺序有关
关于operate的举例
//当群里传来消息,内容为hello bang的时候,返回一句"hello bang!!!"
public class HelloBang{
public String check(){
return "hello bang";
}
public String operate(String msg){
return msg+"!!!";
}
}
文档参考httpapi文档
字段参考httpapi群事件字段
不难的,我不会骗你的