IT/Spark

3) Scala 기본적인 문법들

성진팍 2017. 6. 12. 22:46

Scala 기본적인 문법들은 집고 가야 할 것 같아서..ㄷㄷ




//class 선언 없이도 object로만 돌아갈수도 잇다.


//object test {  // single ton 객체 느낌. static 변수같은 느낌

//    

//  var bb = 1

//  def main(args:Array[String]): Unit ={

//  

//    var mutable = 1

//  

//    val immutable = 2

//  

//    println("aaaaaa")

// 

//    //immutable = 3

//    var a:Int = 3

//    

//    //java랑 다르게 기본형 타입이 다 클래스이다.  java는 int,   Integer 따로 있었는데..

//    

//    //Byte, Short, Int, Long..등 있고

//    

//    //Python이랑 진짜 비슷함

//    

//    // 1 to 10 하면 그냥 Range이고,

//    

//    var list1 = (1 to 10).toList

//    

//    println(list1)

//    

//  }

//}


class usingObj{

  

  //test.main(args)

 // test.bb = 3

}






trait A {

  def hello() = println("hello, A")

  

}



trait B extends A{

  override def hello() = println("hello, B")

}





class C extends A with B  //첫번째는 extends키워드, 그 뒤부터 상속 (다중상속받을때) with로 슨다.


object Test {

  def main(args:Array[String]): Unit = {

    val obj = new C()

    obj.hello()

    

    var t1 = (1,2)

    

    var n2 = t1._2

    

    println("n2:", n2)

    

    

    var o1 = Option() //값이 없어도 null이 아니라 Option 타입이다.

    println(o1.getOrElse("x"))

    

    //test1: List[Int] = List(1,2,3)

    

    var patternM = "bb"

        

    patternM match{  // if else, 어떤 변수에 대해 매치해서 보는 것

      case "a" => println("a!")

      case _ => println("err")

    }

    

    var b = 2

    

    b match {

      case v if v == 2 => println("b!!")  // v if v 는 그냥 case 2

      case _ => println("b err")

    }


    var tuple1 = (20,30)

    

    tuple1 match {

      case (c1, c2) => println("c1: " + c1)

    }

    

    var d = List(1,3,4)

    

    d match{

      case e1::e2::xs => println(e1)

    }

    

    //println("e1?? " + e1)

  }

}

'IT > Spark' 카테고리의 다른 글

플젝) Spark Streaming 이용한 온라인러닝 시작1  (0) 2017.06.25
3) 시작하기 앞서 간단  (0) 2017.06.15
2) 환경구축!!  (0) 2017.06.10
1) 스파크 용어 정리  (0) 2017.06.10