- 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?
- HTML5+CSS3+JavaScript從入門到精通:上冊(微課精編版·第2版)
- Spring 5.0 Microservices(Second Edition)
- Vue.js快速入門與深入實戰
- C語言程序設計
- Blockly創意趣味編程
- 實戰低代碼
- 高級C/C++編譯技術(典藏版)
- Access 2016數據庫管
- Jenkins Continuous Integration Cookbook(Second Edition)
- Kotlin Programming By Example
- ASP.NET求職寶典
- Web程序設計:ASP.NET(第2版)
- 3D Printing Designs:The Sun Puzzle
- 安卓工程師教你玩轉Android
- Android智能手機APP界面設計實戰教程