궁금한 내용을 검색해보세요!
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
서근 개발노트
티스토리에 팔로잉
SWIFT/Grammar

Swift : 기초문법 [Empty Collections]

서근
QUOTE THE DAY

-
Written by SeogunSEOGUN

반응형

Empty Collections

배열, 세트 및 딕셔너리는 한 곳에서 값을 함께 수집하므로 이것을 모두 컬렉션 이라고 합니다.

Empty 컬렉션 을 만들고 싶다면 유형 뒤에 여는 괄호와 닫는 괄호를 쓰면됩니다 '( )'. 예를 들어 다음과 같이 키와 값에 대한 문자열이있는 빈 딕셔너리를 만들 수 있습니다.

var teams = [String: String]()

그런 다음 나중에 다음과 같이 항목을 추가 할 수 있습니다.

teams["Paul"] = "Red"

마찬가지로 다음과 같은 정수를 저장하기 위해  Empty Arry를 만들 수 있습니다.

var results = [Int]()

예외는 Empty Set를 만드는 것입니다. 이는 다르게 수행됩니다.

var words = Set<String>() 
var numbers = Set<Int>()

이것은 Swift가 딕셔너리와 배열만을 위한 특별한 구문을 가지고 있기 때문입니다. 다른 유형은 집합과 같은 꺾쇠 괄호 구문을 사용해야합니다. 원하는 경우 유사한 구문으로 배열과 딕셔너리를 만들 수 있습니다.

var scores = Dictionary<String, Int>() 
var results = Array<Int>()

Empty 컬렉션을 생성하려는 이유는??

let names = ["Eleanor", "Chidi", "Tahani", "Jianyu", "Michael", "Janet"]

위 코드를 보면 6개의 문자열의 상수(let) 배열이고, 상수이기 때문에 배열에 더 많은 것을 추가 할 수 없음을 의미합니다. 배열이 생성 될 때 모든 항목을 알고 있으므로 나머지 프로그램은 고정 된 데이터 만 사용합니다. 하지만 모든 데이터를 미리 알지 못하는 경우에는 빈 컬렉션을 만든 다음 데이터를 계산할 때 추가하는 것이 더 일반적입니다.

 

예를 들어, names위에 고정 된 배열이 있고 J로 시작하는 이름을 검색/확인 하려면 다음과 같이 수행 해야 합니다.

 

  1. JNames와 같은 빈 문자열 배열을 만듭니다.
  2. names배열의 모든 이름을 살펴보고 "J"로 시작하는지 확인합니다.
  3. 만약 J로 시작하는 이름이 있다면 jNames 배열에 추가합니다.

J로 시작하는 이름을 확인했다면, jNames에서 'Jianyu'와 'Janet'을 찾을 수 있습니다.

예시

var favoriteColors = Dictionary<String, String>()
var answers = [Bool]()
var scores = Array<Int>()
var authorAges = [String: Int]()

잘못된 예시

var episodeNames = Array()  
var wines = Dictionary<String: String>()
//정답 : var wines = Dictionary<String, String>() 또는 [String: String]()
var mountainHeights = [String, Int]()
//정답 var mountainHeights = [String: Int]()

 

Empty TEST :  문제를 풀려면 이곳을 클릭해주세요.

 

 

읽어주셔서 감사합니다🤟

 

 

 


잘못된 내용이 있으면 언제든 피드백 부탁드립니다.


서근


위처럼 이미지 와 함께 댓글을 작성할 수 있습니다.