Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala集合中的序_Scala_Set - Fatal编程技术网

Scala集合中的序

Scala集合中的序,scala,set,Scala,Set,我注意到,当Scala集合的元素少于5个时,它会保持顺序。但在那之后就不能维持秩序了。只是想知道背后的原因 注意-我不依赖于集合中元素的顺序。这是一个观察,很想知道这是否是一个正确的观察,以及这是如何发生的。 代码示例: val s= Set(4,3,1) println(s) val s1= Set(4,3,1,2) println(s1) val s2= Set(4,3,1,2,5) println(s2) 输出: Set(4, 3, 1) Set(4, 3, 1,

我注意到,当Scala集合的元素少于5个时,它会保持顺序。但在那之后就不能维持秩序了。只是想知道背后的原因

注意-我不依赖于集合中元素的顺序。这是一个观察,很想知道这是否是一个正确的观察,以及这是如何发生的。 代码示例:

  val s= Set(4,3,1)
  println(s)
  val s1= Set(4,3,1,2)
  println(s1)
  val s2= Set(4,3,1,2,5)
  println(s2)
输出:

Set(4, 3, 1)
Set(4, 3, 1, 2)
Set(5, 1, 2, 3, 4)

看看下面的代码,对于大小为4的集合,代码似乎有特殊的case类实现。

集合是无序集合。事实上,直到第四个阶段,你才能看到一个实现细节,你甚至可以认为这是一个巧合。