swift basic operators-controlflow
DESCRIPTION
아꿈사 swift Basic Operator, String and Character, Collection Types, Control FlowTRANSCRIPT
![Page 1: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/1.jpg)
Basic Operators
Swift
![Page 2: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/2.jpg)
용어
단항 연산자• -a, !b, i++
이항 연산자• 2 + 3
삼항 연산자• (a ? b : c)
![Page 3: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/3.jpg)
할당 연산자let b = 10 // 상수var a = 5 // 변수a = b// a 는 10
let (x, y) = (1, 2)// 튜플이용 x 는 1, y 는 2
if x = y {}// 대입연산자는 값을 반환하지 않으므로 오류
![Page 4: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/4.jpg)
산술 연산자1 + 25 – 32 * 310.0 / 2.5// 오버플로우를 허용하지 않음// 오버플로우 연산자 이용 ( 예 a &+ b) >> Advanced Operators 참고
“hello, “ + “world” // “hello, world”// 덧셈 연산자는 문자열 지원
let dog:Character = “🐶”let cow:Character = “🐮”let dowCow = dow + cow // dowCow 는 “🐶🐮”
![Page 5: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/5.jpg)
나머지 연산자
9 % 4// 1
-9 % 4// -1
8 % 2.5// 0.5
![Page 6: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/6.jpg)
증감 연산자
var a = 0let b = ++a // b 는 0let c = a++ // c 는 1// a 는 2
![Page 7: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/7.jpg)
단항 마이너스 연산자
let three = 3// three 는 3
let minusThree = -three // minusThree 는 -3
let plusThree = -minusThree// plusThree 는 3
![Page 8: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/8.jpg)
단항 플러스 연산자
let minusSix = -6let alsoMinusSix = +minusSix// alsoMinusSix 값은 -6, 변함없다
![Page 9: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/9.jpg)
복합 할당 연산자
var a = 1a += 2// a 는 3, a = a + 2 의 축약
let b = a += 2// 요런건 안된다
![Page 10: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/10.jpg)
비교 연산자a == ba != ba > ba < ba >= ba <= bobj1 === obj2// 동일 객체면 true, class 타입일 때 사용obj1 !== obj2// 동일 객체 아니면 false
![Page 11: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/11.jpg)
삼항 조건 연산자
(question ? answer1 : answer2)참이면 answer1, 거짓이면 answer2
let contentHeight = 40let hasHeader = truelet rowHeight = contentHeight + (hasHeader ? 50 : 20)// rowHeight 는 90 (40 + 50)
![Page 12: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/12.jpg)
범위 연산자 ( 폐쇄 )a…b
for index in 1…5 {println(“\(index) time 5 is \(index * 5)”)
}// index 는 1, 2, 3, 4, 5
Control Flow 에서 다시 설명
![Page 13: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/13.jpg)
범위 연산자 ( 반폐쇄 )a..b
let names = [“Anna”, “Alex”, “Brian”, “Jack”]let count = name.count// count 는 4
for i in 0..count {println(“Person \(i + 1) is called \
(names[i])”)}// i 는 0, 1, 2, 3
![Page 14: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/14.jpg)
논리 연산자 (NOT)let allowedEntry = falseif !allowedEntry {
println(“ACCESS DENIED”)}// ACCESS DENIED 출력됨
![Page 15: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/15.jpg)
논리 연산자 (AND)let enteredDoorCode = truelet passedRetinaScan = falseif enteredDoorCode && passedRetinaScan {
println(“Welcome!”)} else {
println(“ACCESS DENIED”)}// ACCESS DENIED 출력
![Page 16: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/16.jpg)
논리 연산자 (OR)let hasDoorKey = falselet knowOverridePassword = trueif hasDoorkey || knowOverridePassword {
println(“Welcome!”)} else {
println(“ACCESS DENIED”)}// Welcome! 출력
![Page 17: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/17.jpg)
복합 논리 연산자let enteredDoorCode = truelet passedRetinaScan = falselet hasDoorKey = falselet knowOverridePassword = true
// ture && false || false || trueif enteredDoorCode && passedRetinaScan || hasDoorKey || knowOverridePassword {
println("Welcome!")} else {
println("ACCESS DENIED") }// Welcome! 출력
![Page 18: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/18.jpg)
괄호 명시
if (enteredDoorCode && passedRetinaScan) || hasDoorKey || knowOverridePassword {
println("Welcome!")} else {
println("ACCESS DENIED")}// Welcome! 출력
![Page 19: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/19.jpg)
Strings and Characters
Swift
![Page 20: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/20.jpg)
문자열 리터럴
let someString = “Some string literal value”let wiseWords = “\”Imagination is more important than knowledge\” – Einstein”let dollarSign = “\x24” // 1 바이트 유니코드let balckHeart = “\u2665” // 2 바이트 유니코드let sparklingHeart = “\U0001F496” // 4 바이트 유니코드
![Page 21: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/21.jpg)
빈 문자의 초기화
var emptyString = “”var anotherEmptyString = String()// 두 문자열 모두 비어있으며 서로 똑같다if emptySring.isEmpty {
println(“ 여기엔 아무것도 보이지 않습니다 .”)}// prints 여기엔 아무것도 보이지 않습니다 .
![Page 22: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/22.jpg)
문자열 가변성
var variableString = “Horse”variableString += “ and carriage”// variableString 은 “ Horse and carriage”
let constantString = “Highlander”constantString += “ and another Highlander”// 컴파일 에러 – 상수 문자열은 변경될 수 없습니다 .
![Page 23: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/23.jpg)
문자열 값 타입
Strings are value types
let a = “A string”let b = a// a 의 “ A string” 을 b 에 복사
class 는 Reference type
![Page 24: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/24.jpg)
문자와 작업하기
for character in “Dog!🐶” {println(character)
}// D// o// g// !// 🐶let wonSign:Character = “₩”
![Page 25: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/25.jpg)
문자 세기
let unusualMenagerie = "Koala 🐨, Snail 🐌, Penguin 🐧, Dromedary 🐪" println("unusualMenagerie has \(countElements(unusualMenagerie)) characters")
// unusualMenagerie has 40 characters
![Page 26: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/26.jpg)
문자열 및 문자 합치기let string1 = "hello“let string2 = "there“let character1: Character = "!“let character2: Character = "?“let stringPlusCharacter = string1 + character1 // "hello!“let stringPlusString = string1 + string2 // "hello there“let characterPlusString = character1 + string1 // "!hello“let characterPlusCharacter = character1 + character2 // equals "!?“
var instruction = "look over“instruction += sting2 // "look over there“var welcome = "good mornig“welcome += character1 // "good morning!"
![Page 27: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/27.jpg)
문자열 삽입
let multiplier = 3let message = “\(multiplier) times 2.5 is \(Double(multiplier) * 2.5)”// 3 times 2.5 is 7.5 출력
괄호안에 “ (Double Quote), \(Back Slash), Carriage Return, New Line 등을 포함할 수 없다
![Page 28: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/28.jpg)
문자열 비교
let a = “abcdefg”let b = “abcdefghi”a == b // falsea.hasPrefix(“abc”) // trueb.hasSuffix(“efg”) // false
![Page 29: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/29.jpg)
대문자 소문자 문자열
let normal = “Could you help me, please?”let shouty = normal.uppercaseString// COULD YOU HELP ME, PLEASE?
let whispered = normal.lowercaseString// could you help me, please?
![Page 30: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/30.jpg)
유니코드
let dogString = “Dog! 🐶”dogString.utf8dogString.utf16dogString.unicodeScalars
![Page 31: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/31.jpg)
Collection Types
Swift
![Page 32: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/32.jpg)
배열 (Arrays)var shoppingList = [“Eggs”, “Mink”]println(“The list contains \(shoppingList.count) items”)// The list contains 2 items
if shoppingList.isEmpty {println(“empty”)
} else {println(“not empty”)
}// not empty
![Page 33: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/33.jpg)
배열 요소 추가
shoppingList.append(“Flour”)shoppingList += “Baking Powder”shoppingList += [“Chocolate Spread”, “Cheese”, “Butter”]
![Page 34: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/34.jpg)
배열 조작
var firstItem = shoppingList[0]shoppingList[0] = “Six eggs”shoppingList[4...6] = [“Bananas”, “Apples”]// “Six eggs”, “Mink”, “Flour”, “Baking Powder”, “Chocolate Spread”, “Cheese”, “Butter”// “Six eggs”, “Mink”, “Flour”, “Baking Powder”, “Bananas”, “Apples”
shoppingList.insert(“Maple Syrup”, atIndex: 0)let mapleSyrup = shoppingList.removeAtIndex(0)let apples = shoppingList.removeLast()
![Page 35: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/35.jpg)
배열 반복문 사용
for item in shoppingList {println(item)
}for (index, value) in enumerate(shoppingList) {
println(“Item \(index + 1): \(value)”)}
![Page 36: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/36.jpg)
배열 생성 , 초기화var someInts = Int[]()someInts.append(3) // 1 valuesomeInts = [] // empty, Int[] 타입 유지var threeDoubles = Double[](count:3, repeatedValue:0.0)// [0.0, 0.0, 0.0]var anotherOnes = Array(count:3, repeatedValue:2.5)// 기본값에서 타입 추정 , [2.5, 2.5, 2.5]var sixDoubles = threeDoubles + anotherOnes// [0.0, 0.0, 0.0, 2.5, 2.5 2.5]
![Page 37: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/37.jpg)
Dictionaryvar airports: Dictionary<String,String> = [“TYO”, “Tokyo”, “DUB”, “Dublin”]var airports = [“TYO”: “Tokyo”, “DUB”: “Dublin”]
![Page 38: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/38.jpg)
Dictionary 조작
airports.countairports[“LHR”] = “London”airports[“LHR”] = “London Heathrow”airports.updateValue(“Dublin International”, forKey: “DUB”)if let airportName = airports[“DUB”] {
println(“airport name : \(airportName)”)} else {
println(“not found in dictionary”)} // airports 에 DUB 이 없으면 nil 리턴
![Page 39: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/39.jpg)
Dictionary 요소 삭제
airports.removeValueForKey(“DUB”)airports[“DUB”] = nil
![Page 40: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/40.jpg)
Dictionary 반복문 사용for (airportCode, airportName) in airports {
println(“\(airportCode): \(airportName)”)}
for airportCode in airports.keys {println(“airport code: \(airportCode)”)
}
for airportName in airports.values {println(“airport name: \(airportName)”)
}
![Page 41: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/41.jpg)
빈 Dictionary 생성
var namesOfIntegers = Dictionary<Int, String>()namesOfIntegers[16] = “sixteen”namesOfIntegers = [:] // empty
![Page 42: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/42.jpg)
Control Flow
Swift
![Page 43: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/43.jpg)
For 순환문
for-infor index in 1...5 {
println(“\(index) times 5 is \(index * 5)”)}
for-condition-incrementfor var index = 0; index < 3; ++index {
println(“index is \(index)”)}
![Page 44: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/44.jpg)
_ underscoreloop 내에 값이 사용되지 않는다면 _let base = 3let power = 10var answer = 1for _ in 1...power {
answer *= base}
![Page 45: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/45.jpg)
배열 반복
let names = [“Anna”, “Alex”, “Brain”, “Jack”]for name in names {
println(“Hello, \(name)!”)}
![Page 46: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/46.jpg)
Dictionary 반복
let numberOfLegs = [“spider”:8, “ant”:6, “cat”:4]for (animalName, legCount) in numbeOfLegs {
println(“\(animalName): \(legCount) legs”)}
![Page 47: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/47.jpg)
문자열 반복
for character in “Hello” {println(character)
}// H// e// l// l// o
![Page 48: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/48.jpg)
For- 조건부 - 증가부
for var index = 0; index < 3; ++index {println(“index is \(index)”)
}
var index : Int // for loop 밖에서 사용하기 위해for index = 0; index < 3; ++index {}println(“executed \(index) times”)// execute 3 times
![Page 49: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/49.jpg)
whilevar a = 0var b = 10while a < b {
a++}println(a)// 10
![Page 50: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/50.jpg)
Do-Whilevar count = 0do {
count++} while count < 10println(count)// 10
![Page 51: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/51.jpg)
조건문 ifvar temperatureInFahrenheit = 90
if temperatureInFahrenheit <= 32 {println(“It’s very cold. consider wearing a scarf.”)
} else if temperatureInFahrenheit >= 86 {println(“It’s really warm. Don’t forget to wear
sunscreen”)} else {
println(“It’s not that cold. Wear a t-shirt.”)}// It’s really warm. Don’t forget to wear sunscreen
![Page 52: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/52.jpg)
switchlet someCharacter:Character = “e”switch someCharacter {case “1”, “2”, “3”:case “a”, “e”, “i”, “o”, “u”:
println(“\(someCharacter) is a vowel”)case “b”, “c”, “d”, “f”, “g”, “h”, “j”, “k”, “l”, “m”
, “n”, “p”, “q”, “r”, “s”, “t”, “v”, “w”, “x”, “y”, “z”:println(“\(someCharacter) is a consonant”)
default: // 반드시 포함println(“\(someCharacter) is not a vowel or a consonent”)
}
![Page 53: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/53.jpg)
switch 범위로 매치let count = 3_000_000_000_000let countedThings = “stars in the Mily Way”var naturalCount : Stringswitch count {case 0:
naturalCount = “no”case 1...3:
naturalCount = “a few”case 4...9:
naturalCount = “serveral”case 10...99:
naturalCount = “tens of”default: // 반드시 포함
naturalCount = “millions and millions of”}
![Page 54: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/54.jpg)
switch 튜플let somePoint = (1, 1)switch somePoint {case (0, 0):
println(“(0, 0) 은 원점에 있습니다” )case (_, 0):
println(“\(somePoint.0), 0) 은 x 축 상에 있습니다” )case (0, _):
println(“(0, \(somePoint.1)) 은 y 축 상에 있습니다” )case (-2...2, -2...2):
println(“(\(somePoint.0), \(somePoint.1)) 은 상자 안에 있습니다” )default:
println(“(\(somePoint.0), \(somePoint.1)) 은 상자 밖에 있습니다” )}
![Page 55: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/55.jpg)
Value Bindingslet anotherPoint = (2, 0)switch anotherPoint {case (let x, 0):
println(“x 축 상에 있으며 x 의 값은 \(x) 값입니다” )case (0, let y):
println(“y 축 상에 있으며 y 의 값은 \(y) 입니다” )}// x 축 상에 있으며 x 의 값은 2 입니다
![Page 56: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/56.jpg)
wherelet yetAnotherPoint = (1, -1)switch yetAnotherPoint {case let(x, y) where x == y:
println(“(\(x), \(y)) 는 x==y 인 곳에 있습니다” )case let(x, y) where x == -y:
println(“(\(x), \(y)) 는 x==-y 인 곳에 있습니다” )case let(x, y):
println(“(\(x), \(y)) 는 기타 구역에 있습니다” )}// (1, -1) 은 x==-y 인 곳에 있습니다 .
![Page 57: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/57.jpg)
continuelet puzzleInput = “great minds think alike”var puzzleOutut = “”for character in puzzleInput {
switch character {case “a”, “e”, “i”, “o”, “u”, “ “:continuedefault:puzzleOutput += character}
}// puzzleOutput = “grtmndsthnklk”
![Page 58: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/58.jpg)
breakvar count = 0while true {
count++if count == 10 {
break}
}
![Page 59: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/59.jpg)
breaklet numberSymbol: Character = “3”var possibleIntegerValue: Int?switch numberSymbol {case “1”:
possibleIntegerValue = 1case “2”:
possibleIntegerValue = 2default:
break // 아무것도 안할 때 break 를 쓰자}// possibleIntegerValue = nil
![Page 60: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/60.jpg)
fallthroughlet integerToDescribe = 5var description = “ 수 \(integerToDescribe) 는 “switch integerToDescribe {case 2, 3, 5, 7, 11, 13, 17, 19:
description += “ 소수이며 , 또한”fallthrough
default:description += “ 정수입니다 .”
}// description = “ 수 5 는 소수이며 , 또한 정수입니다 .”
![Page 61: Swift basic operators-controlflow](https://reader033.vdocuments.site/reader033/viewer/2022052321/53fdba808d7f72a81c8b4ac1/html5/thumbnails/61.jpg)
Labeled StatementsgameLoop: while square != finalSquare {
if ++diceRoll == 7 { diceRoll = 1 }switch square + diceRoll {case finalSquare:break gameLoop // println(“Game over!”) 로 점프case let newSquare where newSquare > finalSquare:continue gameLoop // while 으로 점프default:square += diceRollsquare += board[sqaure]}
}println(“Game over!”)