- Learning Scala Programming
- Vikash Sharma
- 130字
- 2021-06-30 19:07:50
Symbol literals
A symbol has a name, and it can be defined as a single quote (') followed by alphanumeric identifier:
scala> val aSymbol = 'givenName
aSymbol: Symbol = 'givenName
scala> aSymbol.name
res10: String = givenName
We don't use symbols a lot in normal Scala programs. If we try to dig down deeper into symbols in Scala, we get to know that everything that we define in Scala and give a name to is a symbol. We can check the absolute type for a symbol:
scala> import scala.reflect.runtime.universe._
import scala.reflect.runtime.universe._
scala> typeOf[Symbol]
res12:reflect.runtime.universe.Type= scala.reflect.runtime.universe.Symbol
So this Symbol is from Scala's reflection package. We're not going to dig any deeper. If you're curious though, I would recommend going through the Scala documentation at http://docs.scala-lang.org/overviews/reflection/symbols-trees-types.html.
So that's all about Symbol literals.
推薦閱讀
- 流量的秘密:Google Analytics網(wǎng)站分析與優(yōu)化技巧(第2版)
- Java范例大全
- Beginning C++ Game Programming
- 跟“龍哥”學(xué)C語(yǔ)言編程
- 軟件測(cè)試工程師面試秘籍
- C語(yǔ)言程序設(shè)計(jì)
- 算法訓(xùn)練營(yíng):提高篇(全彩版)
- Java Fundamentals
- Building Slack Bots
- 算法設(shè)計(jì)與分析:基于C++編程語(yǔ)言的描述
- Java程序設(shè)計(jì)教程
- C#網(wǎng)絡(luò)編程高級(jí)篇之網(wǎng)頁(yè)游戲輔助程序設(shè)計(jì)
- Raspberry Pi開(kāi)發(fā)實(shí)戰(zhàn)
- PHP程序設(shè)計(jì)高級(jí)教程
- SFML Essentials