전체 글 130

String and Characters - 2

Accessing and Modifying a String String Indices 각각의 문자를 저장하기 위해 다른 양의 메모리를 요구할 수 있기 때문에 Swift에서 문자열은 정수 값으로 Index를 생성할 수 없다. startIndex를 통해 문자열의 첫 문자에 접근할 수 있지만 endIndex는 마지막 문자 다음 위치를 나타내기 때문에 유효하지 않다. 그리고 빈 문자열이라면 startIndex와 endIndex는 동일하다. 문자열의 index(before:)와 index(after:) 메서드를 이용해 문자열의 인덱스에 접근할 수 있고 index(_:offsetBy:) 메서드를 통해 주어진 인덱스로부터 여러 문자를 한 번에 넘어갈 수 있다. let greeting = "Guten Tag!" pri..

Swift 공식 문서 2023.12.12

Strings and Characters - 1

Extended String Delimiters raw string literal를 나타낼 수 있다. #"String Literal"#로 표현이 가능하다. String interpolation (문자열 보간) let name = "Alice" let str = #"내 이름은 \(name)"# // 내 이름은 \(name)을 그대로 출력 Escaped special characters let str = #"A\B\e"# // A\nB\e 유니코드 스칼라 let sparklingHeart = #"\u{1F496}"# // \u{1F496} // 💖로 나오지 않고 \u{1F496}문자 그대로 출력 주의해야 할 점은 백슬래쉬(\) 뒤에 붙는 #의 개수는 문자열을 감싸는 #의 개수와 동일해야 한다. let tes..

Swift 공식 문서 2023.12.08

Basic Operators

Comparison Operators 동일한 타입과 수의 값을 가지고 있으면 튜플(tuple)도 비교 가능하다. 두 값이 같지 않을 때까지 왼쪽에서 오른쪽 순으로 한 번에 하나의 값을 비교한다. 값이 같지 않은 마지막 값 비교 결과로 튜플(tuple) 비교 결과를 결정한다. 만약 모든 값이 동일하면 두 튜플(tuple)은 동일하다고 여긴다. (1, "zebra") < (2, "apple") // true, 1은 2보다 작기 때문에 "zebra"와 "apple"은 비교하지 않는다. (3, "apple") < (3, "bird") // true, 3 동일, "apple"은 "bird"보다 작다. (4, "dog) == (4, "dog") // true, 4 동일, "dog" 동일 주어진 연산자가 튜플(tup..

Swift 공식 문서 2023.12.05

Assertions and Preconditions

Assertions과 Preconditions는 런타임 시 발생하고 추가적인 코드를 실행하기 위해서 필수적인 조건이 만족되었는지 확실하게 하기 위해서 사용된다. 만약 Assertions과 Preconditions의 Boolean 조건이 true를 반환하면 코드는 일반적으로 진행되고, false를 반환하면 코드 실행이 종료되고 앱이 종료된다. 개발 과정에서 생기는 가정을 표현하기 위해 사용한다. 개발 과정에서 Assertions는 실수나 잘못된 가정을 찾을 수 있도록 도와주고, Preconditions은 프로덕션 과정에서 발생하는 문제를 찾을 수 있도록 도와준다. 복구 가능하거나 예상 가능한 오류를 위해 사용되지 않는다. 잘못된 Assertions 또는 Preconditions는 잘못된 프로그램 상태를 나..

Swift 공식 문서 2023.12.05

Optional

Optionals Optional은 Swift가 가지고 있는 가장 큰 특징 중 하나이다. 변수 또는 상수에 값이 있을 수도 있고 없을 수도 있는 것을 나타낸다. 예를 들어, 문자열의 경우 값이 있으면 "Hello, World!"가 된다. 반대로, 값이 없는 경우는 단순히 ""이 아니다. ""은 값이 없다가 아니고 빈 값이다. 값이 없는 문자열을 나타낼 때는 nil을 할당한다. nil 옵셔널 변수 또는 상수에만 nil을 할당할 수 있다. 옵셔널이 아닌 변수 또는 상수에 nil을 할당하면 컴파일 에러가 발생한다. var serverResponseCode: Int? = 404 serverResponseCode = nil 선언 방법 옵셔널 변수 선언 방법은 자료형 뒤에 (?)를 붙이면 된다. var option..

Swift 공식 문서 2023.12.04