Useful Links
Computer Science
Programming
By Language
Scala Programming
1. Introduction to Scala
2. Scala Language Fundamentals
3. Object-Oriented Programming in Scala
4. Functional Programming in Scala
5. The Scala Collections Library
6. Advanced Language Features
7. Concurrency and Parallelism
8. Tooling and Ecosystem
9. Advanced Topics
10. Practical Applications
11. Best Practices and Idioms
Scala Language Fundamentals
Basic Syntax and Structure
Expressions vs Statements
Semicolon Inference
Code Blocks and Scope
Comments and Documentation
Single-Line Comments
Multi-Line Comments
Scaladoc Comments
Naming Conventions
Variables and Data Types
val for Immutable Variables
var for Mutable Variables
Type Inference
Explicit Type Declarations
Basic Data Types
Numeric Types
Byte
Short
Int
Long
Float
Double
Character and String Types
Char
String
Boolean Type
Special Types
Unit
Null
Nothing
Any
AnyRef
AnyVal
String Operations
String Literals
String Interpolation
s Interpolator
f Interpolator
raw Interpolator
Multiline Strings
String Methods
Operators
Arithmetic Operators
Relational Operators
Logical Operators
Bitwise Operators
Assignment Operators
Operator Overloading
Methods as Operators
Defining Custom Operators
Precedence and Associativity
Control Structures
if-else Expressions
Expression vs Statement
Nested if-else
while and do-while Loops
Loop Syntax
Loop Control Alternatives
for Comprehensions
Iterating over Collections
Using Guards
yield for Creating New Collections
Multiple Generators
Pattern Matching in for
match Expressions
Basic Syntax and Usage
Simple Pattern Matching
Functions and Methods
Defining Functions with def
Parameter Lists and Return Types
Single-Expression Functions
Procedures
Named and Default Arguments
Variable-Length Arguments
Method Overloading
Local Functions
Recursive Functions
Tail Recursion
@tailrec Annotation
Previous
1. Introduction to Scala
Go to top
Next
3. Object-Oriented Programming in Scala