본문 바로가기

교육/Swift

(30)
[swift] optional 1. optional변수에 BOOL값을 하나 가지고 있는 구조체 BOOL이 true면 값을 가지고 있는 것이고false면 값을 가지고 있지 않는 것이다.! 를 통해 값을 강제 추출 할 수 있다. 2. 샘플 코드 var n1 : Intvar n2 : Int = 0//var n3 : Int = nil // nil은 값이 없다는 표현var n3 : Optional = nil //Int를 가지거나 값이 없거나print(n3)n3 = 10print(n3)// optional 구조체 Bool(나 값 있다 없다), Intprint(n3!) // forced unwrapping 강제 추출 // Int? => Optionalvar n4 : Int? = nilshowType(n4)print(n4)//print(n4!) /..
[swift] 튜플 1. 튜플두 개 이상의 값을 가짐다른 타입도 저장 가능() 안에 ,로 구분 2. 샘플 코드// 4. 튜플 : 두개 이상의 값을 가짐 var t1 = (1,3.4) // 인트랑 더블print(t1) // 두개 출력showType(t1) // 튜플에 (Int, Double) 저장하는 타입 //아래와 같이 선언var t2 : (Int, Double) = (1, 3.4) // 요소 접근var t3 = (1, "kim", "seoul") var id = t3.0 // 요소 하나에 접근 var (id2, name, addr) = t3 //모든 요소를 한번에 꺼내기 각 변수는 독립변수var (id2, name, _) = t3 // 3개꺼내오는데 마지막껀 관심없다. 관심없는 요소는 _로 표현print(name, add..
[swift] 연산자 1. 스위프트에서 안돌아가는것a = b = c if a = b {} 실수하지 않기 위해overflow&+ 하면 할 순 있다. 2. 스위프트에서 돌아가는 것범위 연산자 ... ..
[swift] 변수 고급 따로 설명을 쓰기 보단 코드를 그냥 보면서 이해하는것이 더 빠를듯 var max = Int.maxvar min = Int.min // 정확히 Int는 구조체(struct)입니다. print(max,min) // 2. 진수var n1 = 10 // 10진수var n2 = 0x10 // 16진수var n3 = 0o10 // 8진수var n4 = 0b10 // 2진수var n5 = 1_000_000 ///큰 숫자 ,대신 c++ 에선 1'000'000 콤마연산자땜 다른거 씀 // 3. 타입 별칭typealias int = Int32var n : int = 10 showType(n)
[swift] 변수와 상수 1. 변수값이 변하는 수를 변수라 한다.말 그대로 선언해 두고 그 안의 값을 바꿀 수 있는것var 변수명 : 타입 = 값위와 같은 형식으로 사용 2. 상수값이 변하지 않는 수를 상수라 한다.한 번 선언해 두면 그 안의 값을 바꾸지 않는 것let 상수명 : 타입 = 값위와 같은 형식으로 사용 3. 샘플 코드/* 1. 확장자 .swift 2. main함수가 없다. */print("Hello, World!");print("@@") // 주제 1. 변수와 상수 선언var n1 : Int = 10var n2 = 10; // 우측을 보고 좌측 타입 추론, c++11의 auto var n3 : Int // 초기값이 없는 경우 var n4 = 3, d:Double = 3.4, s = "hello" // = 사이에 스페..
[swift] showType함수 타입에 관해 궁금할 때 쓰는 함수교육란에서 계속 사용할거라 따로 작성 // 타입을 알려주는 함수func showType(obj : T){ let mir = Mirror(reflecting:obj) print(mir.subjectType) }