scala(3)Learn CH3 Programming in Scala from others
scala(3)Learn CH3 Programming in Scala from others
Everything is object, and we will use Map, HashSet, Set, Tuple, List, Array.
Array -->Everything is Object
package com.sillycat.easyscala
object EverythingIsObject {
def main(args:Array[String]): Unit ={
//create a array
var ar = Array("Hello", ",", "World")
//0 is object, to method for 0, return Range object
for (i <- 0 to 2){
println(ar(i))
}
}
}
Show contain method in Array println(ar.contains(","))
List in Scala
package com.sillycat.easyscala
object ListIsImmutable {
def main(args: Array[String]): Unit = {
val l1 = List(1,2)
val l2 = List(3,4)
val l3 = l1:::l2
println(l3) //List(1, 2, 3, 4)
val l4 = 1::l2
println(l4) //List(1, 3, 4)
val l5 = 1::2::3::Nil
println(l5) //List(1, 2, 3)
}
}
Tuple in Scala
package com.sillycat.easyscala
object UseTuple {
def main(args: Array[String]) :Unit = {
val t = (1,2,3)
println(t._3) //3
println(t) //(1,2,3)
val t2 = (1,"string",2.3)
println(t2) //(1,string,2.3)
val t3 = ("kiko", "carl", t)
println(t3) //(kiko,carl,(1,2,3))
}
}
Mutable and Immutable in Collection
package com.sillycat.easyscala
import scala.collection.mutable.HashSet
object UseSetMap {
def main(args:Array[String]):Unit={
//default is immutable
//changes will create new instances
//Set
var s = Set("a",1,"b")
s += 3
println(s) //Set(a, 1, b, 3)
println(s.contains(1)) //true
println(s("b")) //true
println(s.getClass()) //class scala.collection.immutable.Set$Set4
//HashSet
//HashSet need import, and identify mutable/immutable
var hs = HashSet("b",3)
hs.+=(5)
println(hs) //Set(b, 3, 5)
println(hs.contains(3)) //true
//Map
var m = Map(1->"a",2->"b","3" ->"c")
m.+=("4" -> "d")
println(m)//Map(1 -> a, 2 -> b, 3 -> c, 4 -> d)
println(m(1) + m("4")) //ad
}
}
references:
http://snowriver.org/blog/2011/03/13/programming-in-scala-ch3/