📄 roominfo.java
字号:
package chat;
import java.lang.*;
import java.util.*;
import java.sql.*;
import chat.*;
public class RoomInfo {
static final int max_messages = 100;
String room_name;
String adm_name;
int max_num;
int current;
Vector user=new Vector();
Vector str=new Vector();
public void setroomname(String name)
{
room_name=name;
}
public void setadmname(String name)
{
this.adm_name=name;
}
public void setmaxnum(int num)
{
this.max_num=num;
}
public void setcurrent(int cur)
{
current=cur;
}
public void addmessage(String message)
{
if(str.size()>max_messages)
str.remove(0);
str.add(message);
return;
}
public RoomInfo() {
room_name="";
max_num=0;
current=0;
//str="";
adm_name="";
}
//读数据
public boolean InitialRoom(int i)
{
DataBean db=new DataBean();
db.connect();
try
{
ResultSet rs = db.openRs("select * from room_info");
rs.absolute(i);
room_name=rs.getString(1);
max_num=rs.getInt(2);
}
catch(Exception e)
{
return false;
}
return true;
}
public String ToRoomNetpac()
{
//基本信息包
String str="@";
str+=room_name;
str+="@";
str+=Integer.toString(current);
return str;
}
public String ToUserListNetpac()
{
//用户信息包
String str = "25@";
str+=Integer.toString(user.size());
for (int i = 0; i < user.size(); i++) {
str += "@";
UserTempInfo info=(UserTempInfo)user.elementAt(i);
str +=info.getname();
str+="@";
str+=Integer.toString(info.map);
}
return str;
}
public String ToMessageNetpac()
{
String str;
str="26@";
str+=this.str;
return str;
}
public int FindMaxSeq()
{
UserTempInfo info ;
int max_seq=0;
for(int i=0;i<user.size();i++)
{
info= (UserTempInfo) user.elementAt(i);
if (max_seq < info.getseq())
max_seq = info.getseq();
}
return max_seq;
}
public boolean AddTalker(UserTempInfo userinfo)
{
UserTempInfo info ;
for(int i=0;i<WholeChatRoomInfo.rooms.size();i++)
{
RoomInfo rInfo=new RoomInfo();
rInfo=(RoomInfo)WholeChatRoomInfo.rooms.elementAt(i);
UserTempInfo uinfo= new UserTempInfo();
for(int j=0;j<rInfo.user.size();j++)
{
uinfo = (UserTempInfo)rInfo.user.elementAt(j);
if(uinfo.getname().compareTo(userinfo.getname())==0)
return false;
}
}
for(int i=0;i<user.size();i++)
{
info= (UserTempInfo) user.elementAt(i);
if(info.getname().compareTo(userinfo.getname())==0)
return false;
}
if(user.size()<=0)
adm_name=userinfo.getname();
user.addElement(userinfo);
current++;
return true;
}
public boolean DealTalker(String name)
{
UserTempInfo info ;
for(int i=0;i<user.size();i++)
{
info= (UserTempInfo) user.elementAt(i);
if(info.getname().compareTo(name)==0)
{
user.remove(i);
current--;
if(i==0&&i<user.size())
{
info = (UserTempInfo) user.elementAt(i);
adm_name = info.getname();
}
return true;
}
}
return false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -