http://www.scala-lang.org/api/current/#scala.collection.Map array 할때 느끼긴 했지만, map에서도 scala가 java보다 메소드가 훨씬 많다. 예를들어 별도로 array들의 sum을 구하기위해 for문을 돌릴 필요가 없다. 즉, 코드 사용량이 줄어든다. 에러날 건덕지가 줄어든다. 뭐 이런 유익한 장점들이 map에서도 보인다. 1. map 선언 scala> var scores = Map ( "Alice" -> 10 , "Bob" -> 3 , "Cindy" -> 8 ) scores: scala.collection.immutable.Map [ String , Int ] = Map ( Alice -> 10 , Bob -> 3 , Cindy -> 8 ) map 선언구문이다. '->' 이란 연산자는 쌍을 만드는 역할을 한다. (java에서 처럼 ',' 을 사용해도 가능) var 으로 선언했지만 기본적으로 immutable 한 성격을 가지고 있다. (변경불가) 물론 mutable하게 선언하면 mutalbe하게 사용할 수 있으니 걱정은 안해도됨. 2. 원소 접근 array처럼 (key) 으로 가능하고, java처럼 .get(key) 형태로도 접근이 가능하다. 그런데 둘의 용도는 조금 다를 수 있다. scala> scores( "Alice" ) res6: Int = 10 scala> scores.get( "basdf" ) res7: Option [ Int ] = None get 메소드를 사용할 경우 'Option' 이라는 object가 등장하는데, 이놈의 뜻은 값이 있을수도 있고, 없을 수도 있다. 없다고 해서 예외를 뱉진 않겠다. 뭐 이런거라고 한다. 꽤나 유용할듯. val ...