일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- eventbubbling
- 이벤트버블링
- swift
- 자료구조
- 연결리스트삭제
- eventcapturing
- hig
- JavaScript
- 이벤트캡처링
- 실패율
- 연결리스트삽입
- 연결리스트생성
- ios
- 환급챌린지
- 직장인인강
- stopPropagation
- 수강료0원챌린지
- 패캠챌린지
- 프로그래머스
- 오공완
- Components
- 코딩테스트
- 사이드프로젝트10개기술스택으로구현하는풀스택서버리스프로젝트withReact
- 패캠인강후기
- MVMM
- 직장인자기계발
- HTML
- 스위프트
- 패스트캠퍼스후기
- 패스트캠퍼스
- Today
- Total
날쌘 개발자
스위프트 기본 문법 (1) 본문
본 내용은 인프런 https://www.inflearn.com/ 의
야곰님의 '야곰의 스위프트 기본문법' https://www.inflearn.com/course/%EC%8A%A4%EC%9C%84%ED%94%84%ED%8A%B8-%EA%B8%B0%EB%B3%B8-%EB%AC%B8%EB%B2%95/dashboard
에서 필기한 내용을 바탕으로 옮긴 내용입니다.
상수와 변수
상수 선언 키워드 let
변수 선언 키워드 var
상수 선언 ( 차후에 변경이 불가능)
let 이름: 타입 = 값
변수 선언
var 이름: 타입 = 값
*swift는 띄어쓰기 잘 써야함.
ex)
let sum: Int (선언 후 차후에 할당)
let inputA: Int = 100
let inputB: Int = 200
sum = inputA + inputB
/ 선언 후 첫 할당되는값으로 정해짐
기본 데이터 타입
Bool, Int, UInt, Float, Double, Character, String
Bool 타입: true / false 값 만
Int : 정수형
UInt(Unsigned integer) : 부호없는 정수
Float : 부동소수타입 (32bit)
Double: 부동소수타입 (64bit)
Character: 한 글자. 유니코드 사용하는 모든 문자 가능 (큰따음표"" 사용)
var someCharacter: Character = "A"
String: 문자열
var someString: String = "하하하 " someString = someString + "웃으면 복이와요" print(someString) //하하하 웃으면 복이와요
- 스위프트에서는 다른 데이터타입과 자료교환은 암시적으로 거의 불가능하다고 봐야함.
Any, AnyObject, nil
Any - Swift의 모든 타입을 지칭하는 키워드
AnyObject - 모든 클래스 타입을 지칭하는 프로토콜
nil - 없음을 의미하는 키워드 (NULL같은느낌)
var someAny: Any = 100 someAny = "어떤 타입도 수용 가능합니다"
class SomeClass {} var someAnyObjeect: AnyObject = SomeClass()
someAny = nil --> 오류
컬렉션 타입 Array, Dictionary, Set
Array - 순서가 있는 리스트 컬렉션
Dictionary - 키와 값의 쌍으로 이루어진 컬렉션
Set - 순서가 없고, 멤버가 유일한 컬렉션 (집합느낌)
var integers: Array<Int> = Array<Int>() integers.append(1) //[1] integers.append(100) //[1, 100] integers.contains(100) //true integers.contains(99) //false integers.remove(at: 0) //0번째 배열 삭제 integers.removeLast() //마지막 삭제 integers.removeAll() integers.count //0
Array과 [Double] 은 동일한 표현. (빈 Double Array생성)
var characters: [Character] = [] // 새로운 빈 Character Array 생성
let을 사용하여 Array를 선언하면 불변 Array
let immutableArray = [1, 2, 3]
Key가 String 타입이고 Value가 Any인 빈 Dictionary 생성
var anyDictionary: Dictionary<String, Any> = [String: Any ] () anyDictionary["someKey"] = "value" anyDictionary["anotherKey"] = 100 anyDictionary //["someKey": "value", "anotherKey": 100] anyDictionary["someKey"] = "dictionary" anyDictionary //["someKey": "dictionary", "anotherKey": 100] anyDictionary.removeValue(forKey: "anotherKey") anyDictionary["someKey"] = nil anyDictionary //[:] let emptyDictionary: [String: String] = [:] let initalizedDictionary: [String: String] = ["name": "yagom, "gender': "male"]
빈 Int Set 생성
var integerSet: Set<Int> = Set<Int>() integerSet.insert(1) integerSet.insert(100) integerSet.insert(99) integerSet.insert(99) //안에 중복된 값이 없는걸 보장하기때문에 한번만 추가됨 integerSet //{100, 99, 1} integerSet.contains(1) //true integerSet.contains(2) //false integerSet.remove(100) //100 삭제 integerSet.removeFirst() integerSet.count let setA: Set<Int> = [1, 2, 3, 4, 5] //{5, 2, 3, 1, 4} let setB: Set<Int> = [3, 4, 5, 6, 7] //{5, 6, 7, 3, 4} let union: Set<Int> = setA.union(setB) //Set A와B의 합집합 //{2, 4, 5, 6, 7, 3, 1} let sortedUnion: [Int] = union.sorted() // 집합을 정렬 //{1, 2, 3, 4, 5, 6, 7} let intersection: Set<Int> = setA.intersection(setB) //교집합 //{5, 3, 4} let subtracting: Set<Int> = setA.subtracting(setB) //차집합 //{2, 1}
'ios > 기본문법' 카테고리의 다른 글
고차함수 (0) | 2022.03.01 |
---|---|
스위프트 기본문법 (5) (0) | 2021.07.09 |
스위프트 기본문법 (4) (0) | 2021.07.09 |
스위프트 기본문법 (3) (0) | 2021.07.09 |
스위프트 기본문법 (2) (0) | 2021.06.08 |