我有一个连接到套接字连接的应用程序,并且该连接向我发送了很多信息.. 可以说每秒 300 个订单(可能更多).. 我有一个类(它就像一个监听器,对某些事件和该事件具有订单)接收该订单..创建一个对象,然后将其添加到一个 ObservableList (这是一个 tableView 的来源).. 这样我的 GUI 显示该订单。但是问题来了,如果 observableList 上已经存在该订单..我无法添加它..我必须更新它(我这样做)..但有时..对于某些订单,这种情况不起作用并再次添加订单。
我将向您展示它是如何与一些代码一起工作的。
public class ReceivedOrderListener
{
ev = Event; //Supose that this is the event with the order
if(!Repository.ordersIdMap.containsKey(ev.orderID))
{
Platform.runLater(new Runnable()
{
@Override public void run()
{
Repository.ordersCollection.add(ev.orderVo);
}
}
});
Repository.ordersIdMap.put(ev.orderID, ev.orderVo);
}
现在好了..这是我的代码的简历。ev 是我的事件,包含订单的所有信息,orderID 是我用来查看订单是否已经存在的键(并且是唯一的)。“Repository”是一个单例类,“ordersCollection”是一个 ObservableList,“ordersIdMap”是一个 HashMap