如何元素存储集合中? [英] How elements are stored in a collection?

查看:128
本文介绍了如何元素存储集合中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我所熟悉的Java集合的实现,我想了解集合如何在斯卡拉实施。

I am familiar with Java collections are implemented and I am trying to understand how collections are implemented in Scala.

做Scala的藏品最终包装Java集合?什么是ArrayList的斯卡拉相当于?
ArrayList中Java中包含一个变量 elementData中保存数组[*]。这是实现在斯卡拉的等价类/特征相似?可增长如何收集在Scala中被实现?

Do Scala's collections ultimately wrap Java collections? What is the equivalent of ArrayList in Scala? ArrayList in Java contains a variable elementData that holds an array [*]. Is this implementation similar in the equivalent class/trait in Scala? How growable collections in Scala are implemented?

亲切的问候,
亚历山大

Kind regards, Alexandre

[*]
<一href=\"http://grep$c$c.com/file/repository.grep$c$c.com/java/root/jdk/openjdk/6-b14/java/util/ArrayList.java\" rel=\"nofollow\">http://grep$c$c.com/file/repository.grep$c$c.com/java/root/jdk/openjdk/6-b14/java/util/ArrayList.java

推荐答案

有一个的概述文件为Scala集合。

There is an overview document for Scala collections.

基本上,这些都是和周围现有的Java集合直接在Scala中写的结构没有包装,虽然可以使用 JavaConverters 对象包装Java集合斯卡拉API中的

Basically these are structures written directly in Scala and not wrappers around existing Java collections, although it is possible to wrap Java collections in the Scala API using the JavaConverters object.

斯卡拉主张这是比较容易原因,当并发涉及不可变的数据结构,而标准的Java集合是可变的。为的java.util.ArrayList 的对应很可能是的 scala.collection.mutable.Buffer 。默认的缓存实现是 ArrayBuffer 也使用阵列内部,可以动态增长。

Scala advocates immutable data structures which are easier to reason about when concurrency is involved, whereas the standard Java collections are mutable. The correspondence for java.util.ArrayList would probably be scala.collection.mutable.Buffer. The default buffer implementation is ArrayBuffer which also uses an array internally which can grow dynamically.

这篇关于如何元素存储集合中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆