使用优先级队列的java仿真

使用优先级队列的java仿真,java,events,simulation,modeling,Java,Events,Simulation,Modeling,我被要求使用优先级队列模拟java中带有一个计数器的存储的事件。如果有人正在接受服务,如果有人在此期间到达,我会增加队列中的人数。我发现我必须使用Comparator,但到目前为止,我似乎只能使用Comparator进行排序,而不能用于排队和取消排队事件。您提到的问题陈述您可以使用一个简单的排队时,我可以想到以下设计 队列-将容纳人员列表 Thread1-读取到达人员并将人员添加到队列中 Thread2-从队列中删除以进行处理 队列的大小将显示队列中的人数 如果您正在处理集合,并且需要对对象进行

我被要求使用优先级队列模拟java中带有一个计数器的存储的事件。如果有人正在接受服务,如果有人在此期间到达,我会增加队列中的人数。我发现我必须使用Comparator,但到目前为止,我似乎只能使用Comparator进行排序,而不能用于排队和取消排队事件。

您提到的问题陈述您可以使用一个简单的排队时,我可以想到以下设计

  • 队列-将容纳人员列表
  • Thread1-读取到达人员并将人员添加到队列中
  • Thread2-从队列中删除以进行处理
  • 队列的大小将显示队列中的人数
  • 如果您正在处理集合,并且需要对对象进行排序,那么您需要一个比较器,但鉴于问题陈述,似乎不需要排序


    干杯

    如果使用离散事件建模透视图,则使用优先级队列来安排驱动系统的事件序列。您可以在Winter Simulation Conference paper archives(冬季模拟会议论文档案)中找到关于如何执行此操作的详细信息,以及具有指数间隔和服务时间的单个服务器队列的Java实现。

    根据您提供的信息,普通队列最合适。优先级部分从哪里开始?问题是什么?JDK中有一个PriorityQueue类。@Jeroen Vannevel我们被要求使用它们,并与它们一起进行投票()功能。@AbhishekHerle:你可能应该先找出原因,这样你才能知道确切的预期结果。我应该使用一个事件列表,记录到达时间,并将其与前一位客户的离开时间进行比较。你能告诉我如何安排吗?@AbhishekHerle:我保证,这都在那篇教程论文中。