공부한 것 꼭꼭 씹어먹기

switch, for, array, dictionary, set 본문

Swift 기초

switch, for, array, dictionary, set

젤라솜 2021. 10. 24. 19:30
반응형
// let : 상수, var : 변수
let explicitDouble: Double = 70
let implicitDouble = 70.0

// 자료형
// Float보다는 Double을 추천

// 여러 줄로 나타내고 싶을 때 """로 감싸자
let quotation = """
I said "I have \(apples) apples."
And then I said "I have \(apples + oranges) pieces of fruit."
"""

// switch case
// 스위프트의 switch 구분에서는 break을 할 필요없고, case에 한번에 여러 조건 넣을 수 있음.
// default를 안썼는데 default에 해당하는 값이 들어올 경우 당연히 에러 나옴.
// 범위를 줄 수 있음
switch temperature {
	case -20...9:
		print("겨울입니다")
	case 10...14:
		print("가을입니다")
	default:
		print("모르겠음")
}


// 반복문
for i in 1...10 { }
for i in stride(from:1, to:10, by:2) { }
for i in stride(from:10, to:1, by:-2) { }
for toDo in toDoArray { // 배열 반복 }
for (key, val) in toDoDic { // 딕셔너리 key, value 반복 }
for key in toDoDic.keys { // 딕셔너리 key 반복 }
for value in toDoDic.values { // 딕셔너리 value 반복 }
// do-while (repeat 블럭 안의 내용이 적어도 한 번은 실행된다)
repeat {
	i += 1
	print(i)
} while i < 10


/** array, dictionary **/
// 배열과 딕셔너리는 모두 대괄호[]를 이용해서 정의할 수 있음
var languages = ["Swift", "Objective-C", "Python"] 
var capitals = [ 
	"한국": "서울", 
	"일본": "도쿄", 
	"중국": "베이징", 
]

// 배열과 딕셔너리의 값에 접근
languages[0] // Swift 
languages[1] = "Ruby" 
capitals["한국"] // 서울 
capitals["프랑스"] = "파리"

// 빈 배열, 딕셔너리 선언
var languages: [String] = []
var capitals: [String: String] = [:] 

// 간결하게 빈 배열, 딕셔너리 선언하기(괄호는 생성자 호출)
var languages = [String]()
var capitals = [String: String]()

languages.append("C#") // 배열의 맨 뒤에 추가
languages.insert("Java", at:1) // 배열 중간에 삽입
languages.remove(at:0)  // 배열의 요소 삭제

capitals.removeValue(forKey: "중국")
capitals["일본"] = nil
capitals.removeAll()

// SET
var set: Set = Set<Int>() // set는 array나 dictionary처럼 축약형으로 선언할 수 없음

 

https://velog.io/@ssionii/Swift-스위프트-기초-문법-1-자료형 

https://www.inflearn.com/course/창원대학교-박동규-교수의-swift-기초-강좌/dashboard

를 참고하여 공부했습니다.

반응형

'Swift 기초' 카테고리의 다른 글

상속  (0) 2021.10.27
property  (0) 2021.10.26
class, struct, enum  (0) 2021.10.25
함수  (0) 2021.10.24
optional  (0) 2021.10.24
Comments