Scala Tutorial Scala? ???? ?????? ??? ?????? ??? ??? ????? ??? ?? ???? ????? ?????.
Scala? Java? ??? ????? ??? ?? ???? ????? ???, ?? ??? ??? ???? ?? ?? ?????? ??? ?????? ??? ??? ????? ???????.
? ?? Scala ????
??? Scala? ??? ???? Hello World ???????.
Example
object HelloWorld extends App { println("Hello, world!") }
Run Instance?
??? ??? ??? "Run Instance" ??? ?????
??
Instance
object HelloWorld { def main(args: Array[String]) { println("Hello, world!") } }
???? ???
??? ????? ??? "???? ??" ??? ?????
Java? Hello World ??????? ??? ???? ?????. ? ?? ??? ???? Scala ??? Hello World ????? static ???? ?? ?? ???? ?? ???? ???? ?? object ???? ???? ???? ????? ????.
????? HelloWorld.scala ??? ?????? ???? ?? ???? ?? ???? ? ????.
> scalac HelloWorld.scala
?? ??:
> scala -classpath . HelloWorld
?? Java? "Hello World" ????? ????? ???? ?? ???? ???? ??? Scala? ??? ? ?? ??? Java? ????? Ant? ?? Java? ?? ???? ?????.
?? -i ??(?? ???? ??)? ???? Scala ?????? ???? ?? ????? ??? ?? ????. ) ? ?? -e(?? ??? ????? ??? HelloWorld ??? ???? ???? ?):
> scala -i HelloWorld.scala -e 'HelloWorld.main(null)'
?: Scala ????? ????? ???? Scala ??? ??? ? ??? ???. ???? ?? PHP ??? ????Scala Community? ????? ?????? ???? ????? ?????????.
Scala ??
???? ????? ????
?? ?? ??
Scala? ?? ?? ??? ?? ?? ?? ?????. ??? ??? ??? ??? ???? ???? ?????. ??? ??? ????? ???? ???? ? ??? ????. ? ?? ?? ??? ?? ??? ????, ?? ?? ??? ??? ??? ???????. ? ? ?? ?? ??? ?? ?? ??? ?? ? ????.
??? ?????
???? ??? ????, ? ??? ??? ??? ?? ????. Scala? ?? ?? ??? ?? ?? ??? ????, ?? ??? ????, ?? ??? ?? ??? ????, ??? ?????. Scala? ??? ???? ?? ?? ??? ??? ????? ???? ????? ???? ?? ??? ?????.
?? ?????? Scala? ?? ??? ???? ???? ??? ??? ???? XML ???? ??? ? ????. ??? ????? ?? ?? ??? ?? ??? ???? ? ?????.
JVM? ?? ??? ???? ???? Scala? ?? ?? ???? ??? ??? ? ????. ??? Scala ????? ?? ??? ?? ??? ??? ???? ? ????.
?? ??? Erlang ?? ?? ??? ??? ? ?? ??? ???? ?? ?? ????? ?????.
def qsort(list: List[Int]): List[Int] = list match { case Nil => Nil case pivot :: tail => val(smaller, rest) = tail.partition(_ < pivot) qsort(smaller) ::: pivot :: qsort(rest) }
?? ???
Scala?? ?? ???? ??? ?? ?? ??? ?? ???? ???? ???? ?????. ?? . ?? ???? ?? ?? ??? ?????:
??? ? ????,
??,
?? ????? ?? ?? ? ?? ?? ??,
comb ine ????? ?? ????? ??? ??,
?? ??,
??? ??? ? ??? ????? ??,
?,
??? ??.
Extensibility
Scala? ??? ???? ?????? ??? ?? ???? ?? ??? ??? ??? ??? ??? ??? ?? ???????. Scala? ????? ??? ??? ?? ??? ?? ???? ??? ? ?? ??? ??? ?? ????? ?????.
?? ???? ??? ?? ?? ???? ??? ? ????.
???? ??? ???? ???? ??? ? ????. ???? ??.
?? ? ??? ???? ???? ??? ????? ???? ?? ??????? ??? ???? ??? ? ?? ??? ? ????.
Concurrency
Scala? Actor? ??? ??? ?????. Actor? ???? ?? ???? ??? ?? ???? ?? ??????. ??? ???? ???? ? ???? ?????? ??? ?? ??? ??? ? ?? ?? ???? ?? ?? ??? ? ????. 2.10 ?? ????? Akka? ?? Actor ???? ?????. [20] ?? ??? Actor ??? ???? EchoServer ?????.
val echoServer = actor(new Act { become { case msg => println("echo " + msg) } }) echoServer ! "hi"
Actor ??? ?? ?????? ????? ?? ?? CPU? ??? ??? ? ????.
? Scala ???? ????? ??? ??
? Scala ????? ?? Scala ??, Scala ??? ??, Scala ??, Scala ???, Scala ??, Scala ???, Scala ??? ? ??? ??? ?? ?? ? ?? Scala ??? ????. ?? ? ?? Scala ??? ?????.
?: ? ????? ? ??? ?? Scala ??? ???? ????. "?? ??" ??? ?? ???? ??? ????? ? ? ????. ??? ??? Scala? ? ? ???? ???? ? ??? ???.
?? ?
- Scala 文件 I/O 2016-10-18
- Scala 提取器(Extractor) 2016-10-18
- Scala 異常處理 2016-10-18
- Scala 正則表達(dá)式 2016-10-18
- Scala 模式匹配 2016-10-18
- Scala Trait(特征) 2016-10-18
- Scala 類和對象 2016-10-18
- Scala Iterator(迭代器) 2016-10-18
?? ??
- ?? ThinkPHP 5.1 ?? ?? ??? ????(PHP ??? ??? ?? ??? ???? 60?) 2022-02-17
- PHP? ??? ???? ??? ?? ??? ???? ?????. 2023-01-04
- ??? ?? ???? ???? ??? Mini ?? MVC ?????? ??? ?? Tianlongbabu ?? 2018-01-25
- ??? ?? ? ??? ??? 2018-03-02
- PHP ?? ?? ????: ?? PHP ?? [???? ??] 2022-06-28
- ?? ?? Node.JS ?? ?? 2022-09-30
- ???? PHP MVC ????? ??(?? ?? 40? ?/??? ??/???? ????? ??? ?) 2022-12-08
- ? ?? ? ??? ???? 2022-04-12