aaa

五柳--先生 2012-10-23 04:07:23
package Bank;

//import java.util.List;

/**
* 6个窗口 1-4为普通窗口(一般业务),5号为快速窗口(水电费类的),6号为VIP窗口
* 随机生成客户 VIP,普通,快速的速度比为: 1:6:3
* 手续办理时间在最大值和最小值之间。
* 各类客户在对应窗口办理,5号和6号窗口没人时办理普通业务
* 生成客户时间和等待办理业务时间自己定,但是需要可以设置
*
*/

class Bank
{
// List<Custom> l1;//普通客户区
// List<Custom> l2;//快速客户区
// List<Custom> l3;//VIP客户区
int l1 = 0;
int l2 = 0;
int l3 = 0;
/*产生客户时间*/
static int time = 10;
// public static Bank b = new Bank();


/*设置时间*/
static void settime(int time1)
{
time = time1;
}

public static void main(String [] args)
{
settime(10);
// new Thread(b).start();
Window w1 = new Window("nommal","common",time);
// Window w2 = new Window("nommal","common",time);
// Window w3 = new Window("nommal","common",time);
// Window w4 = new Window("nommal","common",time);
Window w5 = new Window("quick","quick",time);
Window w6 = new Window("VIP","VIP",time);
new Thread(w1).start();
new Thread(w1).start();
new Thread(w1).start();
new Thread(w1).start();
new Thread(w5).start();
new Thread(w6).start();
}

/*
public void run()
{
// 产生客户
while(true)
{
try
{
Thread.sleep(time*1000);
}
catch (InterruptedException e)
{

e.printStackTrace();
}
l3 = l3 + 1;
l2 = l2 + 3;
l1 = l1 + 6;
// l1.add(new Custom("common",time/6));
// l2.add(new Custom("quick",time/3));
// l3.add(new Custom("VIP",time));
System.out.println("11111111111111........");
}

}
*/








}












package Bank;
import java.util.Random;

/*定义客户类*/
class Custom
{
/*定义是何种客户*/
String name;
/*该客户需要的时间*/
int time=0;
/*时间范围*/
int timerange=0;

Custom(String name,int timeranger)
{
this.setname(name);
this.settimeranger(timeranger);
gettime();
}

void settimeranger(int timeranger)
{
this.timerange = timeranger;
}

void setname(String name)
{
this.name = name;
}

void gettime()
{
this.time = new Random().nextInt(timerange);
}
}


















package Bank;

import java.util.Random;

class Window implements Runnable
{
/*窗口属性*/
String name;
/*窗口状态,true为空闲,false为忙碌*/
boolean state = true;
/*对应的客户信息*/
Custom p1;

int time;

int l1 = 1;
int l2 = 1;
int l3 = 1;

Window(String name,String name0,int time)
{
this.name = name;
this.state = true;
p1 = new Custom(name0,time);
}

public void run()
{
while(true)
{ if(new Random().nextInt(3) != 2)
{
l3 = l3 + 1;
l2 = l2 + 3;
l1 = l1 + 6;
}
if(!state)
{
try
{
Thread.sleep(p1.time*1000);
}
catch (InterruptedException e)
{
e.printStackTrace();
}

state = true;
}
else
{
if(name.equals("nommal"))
{
if(l1>0)
{
System.out.println("common: "+p1.name+" "+p1.time + " leave people: " + l1);
// Bank.b.l1.remove(0);
state = false;
}
}
else if(name.equals("VIP") )
{
if(l3>0)
{
System.out.println("VIP: "+p1.name+" "+p1.time + " leave people: " + l3);
// Bank.b.l3.remove(0);
l3--;
state = false;
}
// else if(!Bank.b.l1.isEmpty())
else if(l1>0)
{
System.out.println("common: "+p1.name+" "+p1.time + " leave people: " + l1);
// Bank.b.l1.remove(0);
l1--;
state = false;
}
}
else if(name.equals("quick"))
{
// if(!Bank.b.l2.isEmpty())
if(l2>0)
{
System.out.println("quick: "+p1.name+" "+p1.time + " leave people: " + l2);
// Bank.b.l2.remove(0);
l2 -- ;
state = false;
}
// else if(!Bank.b.l1.isEmpty())
else if(l1>0)
{
System.out.println("common: "+p1.name+" "+p1.time + " leave people: " + l1);
// Bank.b.l1.remove(0);
l1--;
state = false;
}
}
}
}
}


/*
public void create()
{

while(true)
{
try
{
Thread.sleep(p1.time*1000);
}
catch (InterruptedException e)
{

e.printStackTrace();
}
l3 = l3 + 1;
l2 = l2 + 3;
l1 = l1 + 6;
// l1.add(new Custom("common",time/6));
// l2.add(new Custom("quick",time/3));
// l3.add(new Custom("VIP",time));
System.out.println("11111111111111........");
}

}

*/


}
...全文
59 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧