Home » Scala

Reduction of List

reduceLeft and foldLeft reduceLeft insert a given operator between adjacent elements of a list List(x1, …, xn) reduceLeft op = x1 op x2 op … xn Ex: def sum(xs: List[Int]) = (0 :: xs) reduceLeft (_ + _);…

Read More »

Pair and tuple

Pair A pair include 2 elements that is written (x, y) in Scala Pairs can also be used as patterns: val (label, value) = pair  Tuple A tuple includes more than 2 elements The fields of a tuple…

Read More »

List

List is immutable, its elements can’t be changed List is recursive All the elements of list have the same type All lists are constructed from An empty list Nil Operator cons (::) Operators ending with “:” is calculated…

Read More »

Functions as objects

The function type A => B is just an abbreviation for the class scala. Function1[A, B], which is defined as follows.  package scala; trait Function1[A, B] { def apply(x: A): B } An anonymous function such as  (x:…

Read More »

Scala syntax summary

Type Numeric type: Int, Double (and Byte, Short, Char, Long, Float) Boolean type: with the values true and false String type Function type: ike Int => Int, (Int, Int) => Int Expression Identifier: such as x, isGoodEnough Literal:…

Read More »

Currying

Currying is when you break down a function that takes multiple arguments into a series of functions that each take only one argument. Example Ex1: Write a function that takes the product of all the integers on a…

Read More »

Higher-order functions

Higher order functions Higher order functions return functions as a result def sumInts(a: Int, b: Int): Int = if (a > b) 0 else a + sumInts(a + 1, b) Higher order functions also take other functions as…

Read More »

Scala – Pattern Matching

scala

Có rất nhiều trường hợp khi chúng ta cần đưa ra một quyết định trong chương trình dựa trên các điều kiện hoặc giá trị. Ý tưởng đầu tiên nghĩ đến trong đầu là toán tử IF ELSE…

Read More »

Apache Kafka với Scala

Apache Kafka là nền tảng streaming phân tán mã nguồn mở được sử dụng để xây dựng các pipeline dữ liệu thời gian thực và các ứng dụng streaming. Nó có khả năng mở rộng theo chiều ngang,…

Read More »

Scala – String

scala

String trong Scala là kết hợp của các ký tự hoặc một chuỗi các ký tự. Nó là cấu trúc dữ liệu dựa trên index và sử dụng phương pháp tuyến tính để lưu trữ dữ liệu trong…

Read More »