- Learning Scala Programming
- Vikash Sharma
- 300字
- 2021-06-30 19:07:44
Introduction to Scala
Consider a scenario where you get a paragraph and a word and you are asked to get the number of occurrences for that word. You're lucky enough to know a language such as Java. Your solution might look like this:
String str = "Scala is a multi-paradigm language. Scala is scalable too."
int count = 0;
for (stringy: str.split (" ")) {
if (word.equals (stringy))
count++;
}
System.out.println ("Word" + word + " occurred " + count + " times.")
That was easy, wasn't it? Now our Scalable language has a simple way of accomplishing this. Let's take a look at that:
val str = "Scala is a multi-paradigm language. Scala is scalable too."
println ("Word" + word + " occurred " + str.split(" ").filter(_ == word).size + " times.")
That's it, a one-liner solution for the same problem. The code may not look familiar right now, but gradually you'll have command over it. By the end of this chapter, we'll understand everything that's needed to run a Scala program, not just a Hello World program, but one that does something.
Scala's no different. It runs on Java Virtual Machine (JVM), so Java folks must have an idea about it. If not, JVM is defined as an abstract computing machine that operates on a set of instructions (Java Bytecode). It enables a machine to run a Java program. So here's the conclusion: when we write Scala programs and compile them, they are converted into Java Bytecode and then run on JVM. Scala interoperates with all Java libraries. It's easier and, of course, possible to write our own Scala code and also incorporate library functions written in Java.
Scala is a multi-paradigm language; it's a mixture of object-oriented and functional programming. But what good is it to us?
- Spring 5.0 By Example
- 青少年美育趣味課堂:XMind思維導圖制作
- 精通API架構:設計、運維與演進
- Visual Basic學習手冊
- Unity 5.x By Example
- 大模型RAG實戰:RAG原理、應用與系統構建
- D3.js 4.x Data Visualization(Third Edition)
- 網站構建技術
- JavaCAPS基礎、應用與案例
- iPhone應用開發從入門到精通
- QGIS Python Programming Cookbook(Second Edition)
- 持續集成與持續交付實戰:用Jenkins、Travis CI和CircleCI構建和發布大規模高質量軟件
- Angular應用程序開發指南
- Learning Splunk Web Framework
- Node.js從入門到精通