반응형

조건문 2

[Scala] 와일드카드, 패턴가드 및 반복자가드 매칭

안녕하세요 Dibrary입니다. 이번에는 여러가지 매치되는 것만 걸러내는 방법을 배워보겠습니다. 책에는 단어가 '가드'라고 나오는데, 처음에 이게 왜 가드라고 하는걸까~ 싶었는데, 다음 단계로 진행하지 못하게 막는 의미로 본다면 '가드'를 쓸 수 있는거 같네요. 조건에 맞게 걸러내는 방법이 몇 가지 있는데, 그 중에 와일드카드 패턴매칭은 모든 입력 패턴을 매치시킴으로써 scala.MatchError가 발생하는 것을 방지합니다. 먼저 OK라는 문자를 가진 message 변수를 선언해보고 status에서 match를 해 보겠습니다. OK는 200에 매치 되므로 결과는 200이 나왔습니다. 만일 다른 값이라면 어떨까요? 예상한 대로 -1로 빠집니다. 결국 OK를 제외한 그 어떤 경우라도 other로 빠져서 -..

[Scala] 표현식 과 조건문

안녕하세요 Dibrary입니다. 이번에는 표현식과 조건문을 정리해보겠습니다. 먼저 표현식(Expression)이란 '실행 후 값을 반환하는 코드 단위'를 지칭합니다. 값을 반환하기 때문에 함수형 프로그래밍의 기반이 됩니다. 이게 정말 간단한 표현식인 것이죠. amount는 그저 100+10만 반환할 뿐입니다. 그러면 이렇게 하는 것과 무슨 차이가 있느냐 생각이 드실 겁니다. 각각 따로 입력하고 처리해도 같은 결과가 나오니까요. 표현식으로 표현할 경우 'x가 amount를 정의하기 위한 것' 이라는 의도가 보이게 하는 것입니다. 이 '이해'에 차이를 줄 수 있죠. 중괄호 안에 쓸 내용이라면 여러 줄에 걸쳐서도 작성이 가능합니다. 조건문은 if-else를 사용해서 작성이 가능합니다. 먼저 if만 써봤습니다...

반응형