为什么Scala需要符号?

时间:2012-03-01 17:18:09

标签: scala symbols

  

可能重复:
  Practical examples of using symbols in Scala?

如果字符串是不可变的,在Scala中使用符号的原因是什么?在我知道身份很重要时使用符号之后,这意味着符号被中断,并且具有相同字符值的两个符号将是同一个对象。但是,如果字符串来自Java语言(它们是不可变的和实例化的),那么Scala中的字符串是否已经完成了?

如果我误解了符号,或者您可以提供有关他们需要/使用的原因的更多信息,我将很乐意学习:)

1 个答案:

答案 0 :(得分:1)

我会说相反:当只有身份很重要时才使用符号。具有相同名称的两个符号将始终引用相同的实例,因此可以无风险地比较这些引用。

例如,可以使用符号作为轻量级枚举。