2
0
mirror of https://github.com/chubin/cheat.sheets synced 2024-11-01 21:40:24 +00:00
cheat.sheets/sheets/_scala/DataStructures

43 lines
843 B
Plaintext
Raw Normal View History

// sole member of the Unit type (like C/Java void).
() //(empty parens)
// tuple literal
// This example would be a Tuple3
2017-05-28 21:10:53 +00:00
(1,2,3)
// tuple sugar
// This example would be a Tuple2
(1 -> 2) //same as
(1, 2)
2017-05-28 21:10:53 +00:00
// destructuring bind: tuple unpacking via pattern matching.
var (x,y,z) = (1,2,3)
// hidden error: each assigned to the entire tuple.
// BAD
var x,y,z = (1,2,3)
// list (immutable).
var xs = List(1,2,3)
// paren indexing. (slides)
// more on it: https://www.slideshare.net/Odersky/fosdem-2009-1013261/27
xs(2)
// cons.
1 :: List(2,3)
// map (Immutable)
Map(1 -> 'a', 2 -> 'b', 3 -> 'c') //same as
Map((1, 'a'), (2, 'b'), (3, 'c'))
// range
// accepts start, end and step parameters
Range(1, 5) //returns Range(1,2,3,4,5)
Range(1, 10, 2) //returns Range(1,3,5,7,9)
2017-05-28 21:10:53 +00:00
// range sugar.
1 to 5 // same as
1 until 6
1 to 10 by 2