데이터 유형(Data Type)에서 배열(Array)을 제외한 리스트(List)와 딕셔너리(Dictionary)에 대해서 알아보겠습니다. 리스트는 배열과 비슷하지만 포함되는 요소들의 개수가 가변적이라는 차이점이 있습니다.
리스트(List)란
리스트 (또는 리스트<T>)는 동일한 데이터 유형의 요소들로 구성된 데이터 구조입니다. 각각의 요소는 리스트 내에서 고정된 위치를 가지고 있기 때문에 색인(index)으로 접근할 수 있습니다. 배열(Array) 또한 여러 개의 요소들을 포함하지만 그 크기가 고정되어있는 반면, 리스트(List)는 요소의 삽입과 제거가 가능하여 가변적이라는 차이점이 있습니다.
Uipath에서 리스트 만드는 방법
1) 변수 패널(Variables Panel)의 Create Variable에서 변수명을 정하고 변수유형을 수정해줍니다.
변수명을 정할 때 리스트라는 것을 확인하기 위해서 list를 붙여주는 것이 좋습니다. 저는 listColor라고 해보겠습니다. 여기에서 중요한 점은 변수 유형을 수정해야 한다는 점입니다. 변수 패널에서 변수를 만들게 되면 기본적으로 문자열(String) 유형을 기본으로 갖는데, 우리가 만들어주려는 변수는 리스트 유형이므로 변수 유형의 수정이 필요합니다. 아래 화면 빨간 칸처럼 "Browse for Types..."를 클릭하신 후 "System.Collections.Generic - List <T>"를 선택해주시면 됩니다. 이때, 리스트에 담길 요소들의 데이터 유형도 설정하는데 문자라면 String, 숫자라면 int32로 선택해주시면 됩니다.
2) 변수 패널(Variables Panel)의 Default란에서 기본값을 부여해줍니다.
리스트를 만들 때 포함시킬 기본 요소 값을 부여해줘야 하는데 변수 패널의 Default란에 직접 넣어주시면 됩니다. 물론 정해진 형식은 있는데요, 아예 아무 객체도 담고 있지 않은 상태로 시작하고 싶으시다면 "new List(of String)"이라고 넣어줍니다. 반대로 기본 객체를 담고 시작하고 싶으시다면 "new List(of String) from {"담고 싶은 객체"}"을 넣어주시면 됩니다. 저는 색상을 담을 예정이기 때문에 new List(of String) from {"Pink", "Purple"}이라고 2가지 요소를 담고 시작해봤습니다.
딕셔너리(Dictionary)란
딕셔너리(또는 딕셔너리<TKey, TValue>)란 키가 고유한 (키, 값) 쌍의 모음입니다. 딕셔너리는 배열, 리스트와 비슷하지만 색인(Index)으로 값(Value)을 불러오지 않고 "키(Key)"를 통해서 불러온다는 차이점이 있습니다.
Uipath에서 딕셔너리 만드는 방법
1) 변수 패널(Variables Panel)의 Create Variable에서 변수명을 부여하고 변수 유형을 수정해줍니다.
변수명을 정할 때 딕셔너리라는 것을 확인하기 위해서 dict를 붙여주는 것이 좋습니다. 저는 dictEmailAddress라고 해보겠습니다. 리스트와 동일하게 변수유형을 수정해주셔야 하는데 "Browse for Types..."를 클릭하신 후 "System.Collections.Generic - Dictionary <TKey, TValue>"를 선택해주시면 됩니다. 마찬가지로 딕셔너리에 담을 요소들의 데이터 유형도 미리 설정해주셔야 하는데요, 리스트와 달리 Key와 Value의 데이터 유형을 각각 설정해주셔야 합니다. 보통은 String / Object의 조합으로 선택하니 참고해주시면 됩니다.
2) 변수 패널(Variables Panel)의 Default란에서 기본값을 부여해줍니다.
딕셔너리의 요소는 {키, 값}의 하나의 쌍(Pair)로 {} 중괄호 안에 넣어줘야 합니다. 아예 아무런 쌍도 담고 있지 않은 상태로 시작하고 싶으시다면 "new Dictionary(of String, Object)"이라고 넣어주시고, 기본 쌍을 담고 시작하고 싶으시다면 "new Dictionary(of String, Object) from {{"키", "값"}}"을 넣어주시면 됩니다. 저는 {Name, EmailAddress} 쌍을 담을 예정이기 때문에 new Dictionary(of String, Object) from {{"모닝수잔", "morningsusan@tistory.com"}}이라고 1가지 쌍을 담고 시작해봤습니다.
앞서 말씀드린 것처럼 리스트와 딕셔너리는 배열과는 다르게 추가, 삭제가 가능한 가변적인 collection입니다. 해당 내용에 대해서는 추가 포스팅을 통해 살펴보겠습니다.