gpt4 book ai didi

scala - 为什么 List.toString 和 Vector.toString 返回一个很好的表示而不是 Array.toString?

转载 作者:行者123 更新时间:2023-12-04 23:02:54 25 4
gpt4 key购买 nike

scala> Array(1, 2, 3).toString
res1: String = [I@11cf437c

scala> List(1, 2, 3).toString
res2: String = List(1, 2, 3)

scala> Vector(1, 2, 3).toString
res3: String = Vector(1, 2, 3)

从逻辑上讲,人们会期望 Array(1, 2, 3).toString返回 "Array(1, 2, 3)" .

更新:在我看来像 Array映射到内置的 Java 数组类型——这是正确的吗?如果是,这就是原因 Array.toString必须这样做?

最佳答案

这是因为Array是一个 Java 对象。但是,您可以使用 runtime.ScalaRunTime.stringOf如果它适合您的需求。

scala> runtime.ScalaRunTime.stringOf(Array(1, 2, 3))
res3: String = Array(1, 2, 3)

关于scala - 为什么 List.toString 和 Vector.toString 返回一个很好的表示而不是 Array.toString?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18745441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com