스위프트는 타입 세이프(type-safe)언어입니다.코드 컴파일시 타입 검사 통해 일치하지 않은 타입을 오류로 표시합니다.타입 추론도 가능하기 때무에 모든 상수와 변수에게 타입을 지정해줄 필요는 없습니다.정수와 부동소수 리터럴을 합치면 Double 타입으로 추론합니다.
나머지 연산자(a % b)는 a안에 들어갈 b의 배수가 몇인지를 계산하고 남은 값을 반환하는데, 아래 그림과 같은 방식으로 작동합니다.이렇듯 9안에 얼마나 많은 4가 들어가는지를 통해 나머지를 구합니다.같은 타입과 같은 갯수의 값을 가지고 있는 2개의 튜플은 비교할 수
문자열은 문자의 연속으로, Swift 문자열은 String 타입으로 표현됩니다. String 타입은 Foundation의 NSString 클래스와 연결되어 있습니다. 또한 NSString에 의해 정의된 메서드를 노출시키기 위해 String을 확장합니다. 이로 인해 Fo
Swift는 콜렉션의 값을 저장하기 위한 배열(array), 집합(set), 딕셔너리(dictionary)와 같은 3개의 원시적인 콜렉션 타입을 제공합니다.배열은 콜렉션 값레 순서를 가지고 있습니다. 집합은 반복되지 않는 값에 순서가 없는 콜렉션 타입입니다. 딕셔너리는
파이썬과 유사한 방식으로 작동하며 배열의 아이템, 범위의 숫자, 또는 문자열에 문자와 같은 연속된 것에 대해 for-in 루프를 사용하여 반복할 수 있습니다.반복문을 돌면서 원하는 만큼 범위를 건너뛰고 출력하려고 한다면stride(from:to:by:) 함수를 사용하면
Swift에서 switch 구문은 각 케잇의 맨 아래에서 다음 케이스로 넘어가지 않습니다. 만약 C언어에서처럼 다음 케이스로 넘어가려면 fallthrough 키워드를 사용하면 됩니다.defer의 뜻은 미루다, 연기하다 라는 뜻을 가지고 있습니다. 따라서 말 그대로 함수
swift로 작성된 코드들을 보다보면 guard 라는 키워드가 나옵니다. 코드의 전체적인 흐름을 보는데 있어서는 크게 불편하지 않지만 자세히 모르니 직접 활용하기 어려운 문제가 있어 정리 해 봅니다.guard는 if문과 매우 유사한 문법으로 제어문에 속합니다. 사용법은
오늘은 기본중의 기본인 함수에 대해 정리를 해 보려고 합니다.함수는 다른 언어에서도 기본이기 때문에, 특별히 기억할 만한 부분이나 다른 언어와 차이점을 중점으로 정리를 해 보겠습니다.반환값을 가진 함수는 리턴타입을 정의해 줘야 합니다.sayHelloWorld() 뒤에
오늘은 Swift에서 클로저에 대해 이야기해보려고 합니다. 클로저는 간단히 말해서 코드 덩어리라고 할 수 있어요.
탈출 클로저(Escaping Closure) 오늘은 탈출 클로저에 대해 알아보겠습니다. 탈출 클로저는 함수가 끝난 뒤에도 실행될 수 있는 클로저를 말해요. 원래 함수의 매개변수로 전달된 클로저는 함수가 종료되면 메모리에서 사라지는데, 탈출 클로저는 함수가 끝나도 메모
자동 클로저는 말 그대로, 특정 표현식을 함수의 매개변수로 전달할 때 그 표현식을 클로저로 자동으로 감싸주는 기능이에요. 쉽게 말해, 복잡하게 중괄호({ })로 감싸주지 않아도 스위프트가 알아서 클로저로 만들어 준다는 거죠.자동 클로저는 인수를 따로 받지 않고, 호출될
Swift에서 클로저는 외부의 변수나 상수를 캡처해서 내부에서 사용할 수 있어요. 클로저는 변수들을 복사하거나 참조할 수 있고, Swift에서는 이 과정을 자동으로 처리해 줍니다. 값 타입과 참조 타입에 따라 클로저가 변수와 상호작용하는 방식도 달라집니다.값 타입(Va
시간을 다루는 코드를 작성할 때, 시:분:초를 계산하고 변환하는 작업이 꽤 빈번하게 발생하죠. 이때 초 단위로 계산을 통일하면 코드가 훨씬 간결해지고 일관성 있게 관리할 수 있습니다. 이번 포스팅에서는 Swift에서 시간을 초 단위로 변환하고, 이를 다시 시:분:초 형