Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- multiprovider
- enum
- Firebase
- user
- switch
- ListView.builder
- snackbar
- Stream
- 문법
- swift 문법
- borderRadius
- controller
- Swift
- Camera
- transform
- Snapshot
- Navigator
- changenotifier
- provider
- changenotifierprovider
- signout
- globalkey
- setstate
- runTransaction
- divider
- consumer
- permission
- datetime
- platformexception
- reference
Archives
- Today
- Total
코딩하는 제리
[Swift] swift 자료형 본문
// 상수
let 이름 : 타입 = 값
// 변수
var 이름 : 타입 = 값
// 값의 타입이 명확하면 타입 생략 가능. 나중에 값을 넣어줄 때 타입 명시 필수. dart 와 같다
// 타입 생략
let integer = 1
var strings = "hello"
// 값을 나중에 할당
var name : String
var age : Int
name = "jerry"
age = 27
// bool
var someBool : Bool = false
someBool = true
// Int : 정수(양수, 음수), 64비트
// UInt : 정수(양수), 64비트
var someInt : Int = 100
var someUInt : UInt = 100
someUInt = -100 // 오류
// Float : 실수 타입. 32비트 부동소수형 (소수점 이하 6자리)
// Double : 실수 타입. 64비트 부동소수형 (소수점 이하 15자리)
var someFloat = 3.14
some Float = 3
var someDouble = 3.14
someDouble = 3
someDouble = someFloat // 오류
// Character : 문자 타입. 유니코드 사용. 큰따옴표("") 사용
// String : 문자열 타입. 유니코드 사용. 큰따옴표("") 사용
var someCharacter : Character = "가"
someCharacter = "a"
someCharacter = "jerry" // 오류
var someString : String = "jerry"
someString = someString + "cho"
someString = someCharacter // 오류
// Any : 모든 타입 (dart의 dynamic)
// Any로 선언된 변수의 값을 사용하려면 형변환이 필수적이다. (잘 사용하지 않는다고 한다..)
var someAny : Any = 100
someAny = "jerry"
someAny = 123.12
// AnyObject : 모든 클래스 타입
// Any 처럼 번거러움이 존재.
class SomeClass{}
var someAnyObject : AnyObject = SomeClass()
// AnyObject는 클래스의 인스턴스만 수용 가능
someAnyObject = 123.12 // 에러
// nil : 다른 언어들의 null과 같은 뜻. 비어있다.
var someAny : Any
var someAnyObject : AnyObject
someAny = nil // 오류
someAnyObject = nil // 오류
// Array : 리스트 타입
var integers : Array<Int> = Array<Int>()
// 위와 동일한 표현 (많다..)
var integers : Array<Int> = [Int]()
var integers : Array<Int> = [] // 이게 편할 듯
var integers : [Int] = Array<Int>()
var integers : [Int] = [Int]()
var integers : [Int] = []
var integers = [Int]()
// 리스트 멤버 삽입
integers.append(1)
integers.append(2)
integers.append(3)
integers.append(123.12) // 오류
// 리스트 멤버 포함 여부
integers.contains(1) // true
integers.contains(4) // false
// 리스트 멤버 교체 ([0]는 index)
integers[0] = 100
// 리스트 멤버 삭제
intergers.remove(at:0) // 0번째 index 삭제
intergers.removeLast() // 마지막 index 삭제
intergers.removeAll() // 모두 삭제
// 리스트 길이
intergers.count
// Dictionary : "key"와 "value"로 이루어진 컬렉션 타입
// dart의 Map과 비슷함..
// 아래 모두 동일
var anyDictionary : Dictionary<String, Any> = [String : Any]()
var anyDictionary : Dictionary<String, Any> = Dictionary<String, Any>()
var anyDictionary : Dictionary<String, Any> = ["key":"value"] // 이게 편할 듯.
var anyDictionary : [String : Any] = Dictionary<String, Any>()
var anyDictionary : [String : Any] = [String : Any]()
var anyDictionary = [String : Any]()
anyDictionary["key"] = "value"
anyDictionary["key1"] = 123123
// 위와 동일
anyDictionary = ["key" : "value", "key1" : 123]
// 키에 해당하는 value 변경
anyDictionary["key"] = 123123123
// 키에 해당하는 value 제거
anyDictionary.removeValue(forKey:"key")
anyDictionary["someKey"] = nil
// Set : 중복되지 않는 멤버가 index 없이 존재하는 컬렉션
var integerSet : Set<Int> = Set<Int>()
var integerSet : Set<Int>()
integerSet.insert(1)
integerSet.insert(2)
integerSet.insert(1) // 반영 안 됨
// 멤버 삭제
integerSet.remove(1)
integerSet.removeFirst()
var setA : Set<Int> = [1, 2, 3, 4]
var setB : Set<Int> = [3, 4, 5, 6]
// 합집합
var union : Set<Int> = setA.union(setB)
// 오름차순 정렬
var ascendingUnion = union.sored(by: <) // 1, 2, 3, 4, 5, 6
// 내림차순 정렬
var descendingUnion = union.sored(by: >) // 6, 5, 4, 3, 2, 1
// 교집합
var intersection : Set<Int> = setA.intersection(setB)
// 차집합
var subtracting : Set<Int> = setA.subtracting(setB)
'iOS > SwiftUI' 카테고리의 다른 글
[Swift] swift 클로저 (0) | 2022.01.03 |
---|---|
[Swift]열거형(enum)/rawValue (0) | 2022.01.03 |
[Swift] swift 구조체/클래스 (0) | 2022.01.03 |
[Swift] swift 조건문/반복문 (0) | 2022.01.03 |
[Swift] swift 함수 (0) | 2022.01.03 |
Comments