-
Notifications
You must be signed in to change notification settings - Fork 7
리터럴 값
ik edited this page Aug 8, 2016
·
12 revisions
#2.8 리터럴 값
###2.8.1 정수 리터럴
- 10진수, 16진수, 8진수
- Long, Int, Short, Char, Byte
- Long은 L 또는 l 필요
- 리터럴의 범위를 넘어서면 컴파일 시 오류 발생
###2.8.2 부동소수 리터럴
- Float(32bit 단정도 2진 부동소수점)
- Double(64bit 배정도 2진 부동소수점)
- 스칼라 2.10 이전에는 소수점 뒤에 숫자가 없는 부동소수점 리터럴(3., 3.e5)이 있었으나 애매한 경우가 있어서 2.11부터 허용 안됨
###2.8.3 불린 리터럴
- true, false
###2.8.4 문자 리터럴
- 인쇄 가능한 유니코드 문자나 이스케이프 시퀀스
- "" : 기본 문자열
- """...""" : 멀티라인 문자열 (이스케이프 시퀀스를 해석 하지 않는다.)
- stripMargin(| 대신 사용하고 싶은 Char) : 형식화를 위해 위치를 맞춘 경우 공백 컨트롤
- stripPrefix(접두사)
- stripSuffix(접미사)
###2.8.6 심벌 리터럴
- 동일 심벌은 하나의 객체를 참조한다.
- 'id == scala.Symbol("id")
- 공백을 포함하는 심벌 생성 방법 : Symbol(" Scala Study Fighting ")
###2.8.7 함수 리터럴
- (Int, String) => String = (i, s) => s+i
- Function2[Int, String, String]
###2.8.8 튜플 리터럴
- N개의 원소를 묶어주는 TupleN 클래스
- 사용 예: n개의 값을 리턴하고 싶은 경우 사용 가능
- 다른 언어에서 n개의 값 리턴 방법 : 1. 매개변수 2. 입력매개변수, 출력매개변수 3. 리턴클래스
- TupleN은 현재 1~22 까지 가능하나 한계는 추후에 없어질 수 있다.
- val tup = ("Scala", 2016) 처럼 사용 가능 하고 튜플은 변경 불가능한 1급 계층 값( 변수에 저장, 파라미터, 리턴값 )
val t = ("Hello", 1, 2.3) //Tuple3[String, Int, Float]
println(t)
println(t._1) // 1부터 시작
val (t1, t2, t3) = ("World", '!', 0x22)
val (t4, t5, t6) = Tuple3("World", '!', 0x22)
*원소가 둘인 튜플을 선언하는 여러가지 방법
(1, "one")
1 -> "one"
Tuple2(1, "one")
Q 2.8.7 Function2[...]