1편 : https://ddaengddaeng.tistory.com/80
출처
앱 12개를 만들며 배우는 Swift4 & iOS11 아이폰 iOS 개발 강좌
주요 내용
- Command + / : 연속으로 주석처리
- Command + R : 실행
코드
1) BookManager.swift (새로운 swift 파일 생성)
import Foundation
class BookManager{
// 변수
var bookList = [Book]() // Book 이라는 데이터 타입이 들어가는 비어있는 배열
// 함수1
func registerBook(bookObject:Book) {
bookList += [bookObject]
}
// 함수2
func showAllBooks() -> String {
var strTemp = ""
for bookTemp in bookList {
strTemp += "Name: \(bookTemp.name)\n"
strTemp += "Genre: \(bookTemp.genre)\n"
strTemp += "Author: \(bookTemp.author)\n"
strTemp += "-------------------\n"
}
return strTemp
}
// 함수3
func countBooks() -> Int {
return bookList.count
}
// 함수4
func searchBook(name: String) -> String? {
var strTemp = ""
for bookTemp in bookList {
if bookTemp.name == name {
strTemp += "Name: \(bookTemp.name)\n"
strTemp += "Genre: \(bookTemp.genre)\n"
strTemp += "Author: \(bookTemp.author)\n"
strTemp += "-------------------\n"
return strTemp
}
}
return nil
}
func removeBook(name: String) {
for (index, value) in bookList.enumerated() {
if value.name == name {
bookList.remove(at: index)
}
}
}
}
2) main.swift
import Foundation
var book1 = Book(name: "햄릿", genre: "비극", author: "셰익스피어")
// book1.bookPrint()
var book2 = Book(name: "누구를 위하여 종을 울리나", genre: "소설", author: "헤밍웨이")
// book2.bookPrint()
var book3 = Book(name: "죄와벌", genre: "사실주의", author: "톨스토이")
// book3.bookPrint()
var myBookManager = BookManager()
myBookManager.registerBook(bookObject: book1)
myBookManager.registerBook(bookObject: book2)
myBookManager.registerBook(bookObject: book3)
print(myBookManager.showAllBooks())
print("number of books : \(myBookManager.countBooks())")
// forced unwrapping
var searchResult = myBookManager.searchBook(name: "햄릿")
if searchResult != nil {
print("\(searchResult!)를 찾았습니다")
} else {
print("찾는 책이 없어요.")
}
// option binding
if let searchResult = myBookManager.searchBook(name: "햄릿") {
print("\(searchResult)를 찾았습니다.")
} else {
print("찾는 책이 없어요.")
}
myBookManager.removeBook(name: "죄와벌")
print(myBookManager.showAllBooks())
3) Book.swift
struct Book {
var name: String
var genre: String
var author: String
func bookPrint() {
print("Name: \(name)")
print("Genre: \(genre)")
print("Author: \(author)")
print("--------------")
}
}
'iOS' 카테고리의 다른 글
[Swift] 스위프트 실전 프로젝트 2. 디지털 액자앱 만들기 (0) | 2020.07.04 |
---|---|
[Swift] 스위프트 실전 프로젝트 1. 도서 관리 프로그램 만들기(3) (0) | 2020.07.03 |
[Swift] 스위프트 실전 프로젝트 1. 도서 관리 프로그램 만들기(1) (0) | 2020.07.03 |
[Swift] Optional (0) | 2020.07.03 |
[Swift] Class, Structure (0) | 2020.07.03 |
댓글