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

📄 broadcast.java

📁 《Java TCP/IP应用开发详解》的部分源程序,开发环境为ECLIPSE3.1
💻 JAVA
字号:
package Section17;

import java.util.Enumeration;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class Broadcast {
private List userList=null;

public Broadcast() {
	userList=new LinkedList();
}

public synchronized boolean addUser(Angent angent)
{
	Iterator it=null;
	it= userList.listIterator();
	Angent user=null;
	while(it.hasNext())
	{
		user=(Angent)it.next();
		if(user.userName.compareTo(angent.userName)==0)
	      return false;
	}
	userList.add(angent);
	return true;
	/*for(Enumeration enumeration=((Object) userList).elements();enumeration.hasMoreElements();)
		if(((Angent)enumeration.nextElement()).userName.compareTo(angent.userName)==0)
			return false;
	userList.addElement(angent);
	return true;*/
}
public synchronized void broadcast(String s)
{
	Iterator it=null;
	it= userList.listIterator();
	Angent user=null;
	while(it.hasNext())
	{
		user=(Angent)it.next();
		user.out.println(s);
	    user.out.flush();
	}
	
	/*for(Enumeration enumeration=userList.elements();enumeration.hasMoreElements(); 
	((Angent)enumeration.nextElement()).out.println(s));}*/
     



}


public synchronized int getUserNumber(){
	return userList.size();
}


public synchronized void removeUser(Angent angent)
{
	userList.remove(angent);
}

public synchronized void sendTo(String s,String toUser)
{
	Iterator it=null;
	it= userList.listIterator();
	Angent user=null;
	while(it.hasNext())
	{
		user=(Angent)it.next();
		if(user.userName.compareTo(toUser)==0)
			{
			  user.out.println(s);	
			  user.out.flush();
			  break;
			}
	
	}
}	
	
	
	
	
	
	
	

public synchronized void sendOther(String s,Angent angent)
{
	/*for(Enumeration enumeration=userList.elements();enumeration.hasMoreElements();)
	{
		Angent angent1=(Angent)enumeration.nextElement();
		if(!angent1.userName.equals(angent.userName))
		{
			angent.out.println(s);
			
		}
	}*/
	Iterator it=null;
	it= userList.listIterator();
	Angent user=null;
	while(it.hasNext())
	{
		user=(Angent)it.next();
		if(user.userName.compareTo(angent.userName)!=0)
			
			  user.out.println(s);	
			  
			
	
	}
	
	
}
}

⌨️ 快捷键说明

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