
156
그레이들 레시피
String hello
=
'
hello
'
assert
'
olleh
'
==
hello
[-
1
..
0
]
//
문자열도
컬렉션임
그루비에서
Range
는 두 개의 값으로 구성되는데, ‘시작값..종료값
(
from
..
to
)
’ 형식입니다. 범위
는 시작값 위치에서 시작하여 각 요소에
next
메서드를 호출하고 종료값 위치까지 호출합니다.
맵
Map
은 키와 값을 구별하기 위하여 콜론
(
:
)
을 사용합니다. 맵에 대괄호 연산자를 사용하면 값
에 접근하느냐 새로운 값을 추가하느냐에 따라
getAt
이나
putAt
메서드가 됩니다. 닷
(.)
연산
자도 이와 유사합니다. [예제
A
-
9
]를 참고하세요.
예제
A-9
맵 활용과 메서드들
def map
=
[
a
:
1
,
b
:
2
,
c
:
2
]
assert map
.
getClass
()
==
LinkedHashMap
assert map
.
a
==
1
❶
assert map
['
b
']
==
2
❷
assert map
.
get
('
c
')
==
2
❸
❶ 닷(.)은
put을
의미함
❷
putAt
메서드가 호출됨
❸ 자바 문법도 동작함
A.5
클로저
그루비는
Closure
라는 클래스가 있습니다. 이것은 객체처럼 사용할 수 있는 코드 블록을 의미
합니다. 일종의 ‘익명
Anonymous
객체’라고 생각해도 됩니다. 과도하게 단순화되었지만, 이해하는
데는 도움이 됩니다. ...