⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userinfolist.java

📁 注:语音聊天部分还未完成
💻 JAVA
字号:
package com.gamvan.club.users.im.server;public class UserInfoList {	/**	 * 用户信息链表类要实现对用户信息的添加删除和查询的功能	 */	private SingleUserMegData root,rootID;//用户信息链表的根		private SingleUserMegData pointer;		private int userCount;//链表中元素的个数	public UserInfoList(){		root = new SingleUserMegData();			rootID = new SingleUserMegData();		root.next = null;			rootID.nextID = null;		pointer = null;		userCount = 0;//初始元素个数为零	}/* * add();用于完成用户信息节点的添加功能 * */	public void add(SingleUserMegData addUserName){		pointer = root;//将游标指向根节点		while(pointer.next != null){//判断是否已经到达链表尾			pointer = pointer.next;		}		pointer.next = addUserName;//加入节点		addUserName.next = null;		userCount++;//计算用户个数的计数器加1	}	/*	 * delete()方法,用来删除离开的用户	 * */	public void delete(SingleUserMegData delUser){		pointer = root;//将游标指向根节点		while(pointer.next != null){//判断是否是链表尾部			if(pointer.next == delUser){//判断当前的节点是否是要删除的节点				pointer.next = delUser.next;//删除节点				userCount--;//计数器减一				break;			}			pointer = pointer.next;//将游标指向下一节点		}	}		//返回链表中元素的个数	public int getUserCount(){		return userCount;	}		//find()方法,完成在用户信息链表中查找的功能,这个是按名字查找	public SingleUserMegData find(String  userName){		if(userCount == 0)			return null;//如果元素链表为0,则直接返回		pointer = root;//游标指向根节点		while(pointer.next!= null){			pointer = pointer.next;//游标下移			if(pointer.userName.equalsIgnoreCase(userName)){				return pointer;			}		}		return null;	}		public SingleUserMegData find(int index){		if(userCount == 0)			return null;//如果元素链表为0,则直接返回		if(index < 0)			return null;		pointer = root;		int testEnd = 0;		while(testEnd < index+1){//判断是否到达所要找的节点			if(pointer.next != null){				pointer = pointer.next;//将游标后移			}else{				return pointer;			}						testEnd++;		}		return pointer;//返回找到元素的节点	}	public SingleUserMegData findID(int index){		if(userCount == 0)			return null;//如果元素链表为0,则直接返回		if(index < 0)			return null;		pointer = root;		int testEnd = 0;		while(testEnd < index+1){//判断是否到达所要找的节点			if(testEnd != index){				pointer = pointer.next;//将游标后移			}else{				return pointer;			}			testEnd++;		}		return null;//未找到元素返回null	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -