Scala 기본문법

변수선언

var(variable) - 가변형변수
val(value) - 불변형변수(java final 과 같은 의미)
클래스
일반적으로 위와 같은 형태로 선언하게 되는데..
실제 사용된 변수를 필드로 설정하려면 다음과 같이
파라미터에 var 또는 val을 붙여줘야 한다.(default public val)

* case 클래스(자바빈스타일의 클래스 스타일)

case 클래스를 사용하는 경우 메소드에서 new를 사용하지 않고도 인스턴스를 제공할수 있는 팩토리메소드로도 사용이가능하다.

메소드 def 뒤에 메소드명을 붙여 사용한다.(python과 동일)
연산자 역시 메소드명으로 사용이 가능하다.


컬렉션
- 스칼라의 컬렉션은 기본적으로 모두 불변형이다. 이는 병렬처리를 기본적으로 안전하고 정확하게 작동하도록 지원하는 구조이다.

1. List 객체
기본적으로 여러타입의 데이터를 복합해서 사용할수 있다.


콘스연산자
2. filter와 partition
모두 고차원함수이다.: 고차원함수는 파라미터나 리턴값이 함수인 함수를 지칭한다.
filter 메소드는 명제함수를 입력받아 해당명제가 참인 값을 리턴한다.
filterNot은 거짓은 값만 리턴한다.



partition은 참과 거짓을 모두 리턴한다.

map 메소드

foldLeft 메소드

2. Map 객체

* get을 사용하는 경우 리턴되는 타입은 option 타입이다.(NullPointExcetpion 에서 안전하다.)
옵션객체는 null인 경우 None으로 아닌경우 Some(value) 형태로 값을 리턴한다.
예를 들어 updatewallet.get("GBP1")을 호출한 경우 null이 아닌 None 값이 리턴된다.
* 옵션의 성질을 이용한 case 패턴매칭

groupBy 메소드

문자형식(스트링인터폴레이션)




댓글

이 블로그의 인기 게시물

어쩌다 마주친 spring Error

nginx 설정정리

이클립스에서 톰캣 publish할때 에러