swift 패스트캠퍼스iOS프로젝트캠프 - 교재에없는Swift예시
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift 패스트캠퍼스iOS프로젝트캠프 - 교재에없는Swift예시相关的知识,希望对你有一定的参考价值。
//
// 배열과 클로저 활용
//
[1, 3, 6, 2, 7, 9]
.filter { $0 % 2 == 0 } // 짝수 필터링
.map { $0 * 2 } // 모든 값에 곱하기 2
.reduce(0, +) // 초깃값부터 각각의 값에 더하기 연산
//
// 튜플 활용
//
typealias CoffeeInfo = (name: String, price: Int)
let coffeeInfo: [CoffeeInfo] = [
("아메리카노", 4300),
("롱블랙", 5000),
("라떼", 4500),
("플랫화이트", 5200),
]
func findCoffee(withName name: String) -> CoffeeInfo? {
return coffeeInfo
.lazy // lazy evaluation
.filter { $0.name == name } // 이름이 같은 커피 정보를 필터링
.first // 결과 중 가장 첫 번째 결과
}
findCoffee(withName: "롱블랙")?.price // 5000
//
// Enum 활용
//
enum APIResult {
case success(String)
case failure(APIError)
}
enum APIError {
case timeout
case invalidParameter(field: String, reason: String)
}
func fetchUsername(userID: Int, completion: (APIResult) -> Void) {
print("fetchUsername(userID: \(userID))")
if userID > 0 {
return completion(.success("fastcampus"))
} else {
return completion(.failure(.invalidParameter(field: "userID", reason: "userID는 0보다 커야 합니다.")))
}
}
fetchUsername(userID: 123) { result in
switch result {
case .success(let username):
print("사용자 이름: \(username)")
case .failure(let error):
print("API 요청 실패: \(error)")
}
}
fetchUsername(userID: -100) { result in
switch result {
case .success(let username):
print("사용자 이름: \(username)")
case .failure(let error):
print("API 요청 실패: \(error)")
}
}
以上是关于swift 패스트캠퍼스iOS프로젝트캠프 - 교재에없는Swift예시的主要内容,如果未能解决你的问题,请参考以下文章
html PC공통스크립트의로딩직후Callback을주는방법
sh 파일에서특정문자열을찾아변형후새로운파일에저장하는스크립트
markdown 터미널프롬프트변경
markdown getter,setter,프로퍼티#python #tutorial
markdown 네임스페이스와스코프#python #tutorial
html 베스트위젯의각리뷰상단에텍스트삽입