首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Scala中创建列表容器对象的最佳方法

在Scala中创建列表容器对象的最佳方法
EN

Stack Overflow用户
提问于 2013-03-19 18:53:24
回答 3查看 379关注 0票数 1

情况是这样的。我正在Scala中创建一个简单的会话处理程序,我需要一个可以存储列表的类。该类需要与其关联的其他函数才能正常工作。

我将通过会话ID访问会话,我很少遍历我将不断添加和从列表中删除的列表

我的问题:

  1. 在这种情况下,适当的Scala对象是什么?
  2. 从所说的Scala对象中添加或删除实体的最佳方法是什么?

我对Scala相当陌生,所以请原谅我可能提出的基本问题。如能提供任何协助,将不胜感激。

编辑:要在其中添加all...Thread安全性是一个因素。所使用的对象必须是线程安全的,或者在按会话ID添加和删除项时必须容易允许线程安全。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-19 19:33:50

您可以使用java.util.concurrent.ConcurrentHashMap -它具有最好的性能与保护线程安全。

票数 2
EN

Stack Overflow用户

发布于 2013-03-19 20:01:57

您可以使用HashSet的不变实现,其中的添加和删除操作有效地占用了恒定时间。

一旦这个集合是不可变的,您将需要学习使用集合的"scala方式“,以及如何处理状态等等。也许您需要改变处理集合的方式,但是这样就不需要担心并发性了。

票数 1
EN

Stack Overflow用户

发布于 2013-03-28 06:51:59

代码语言:javascript
复制
val list = new List(1,2,3,4,5,6,7,8,9,10)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15508104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档