코드네임 :

🍎 3주차 문법 - 딕셔너리와 세트(Set), 열거형(enum) 본문

👥Club/🍀UMC🍀

🍎 3주차 문법 - 딕셔너리와 세트(Set), 열거형(enum)

비엔 Vien 2025. 3. 26. 02:40
// 1. 학생들의 점수 딕셔너리 선언
var students = [
    "Alice": 80,
    "Bob": 90,
    "Min": 85
]


// 2. “Alice”의 점수를 95점으로 수정
students["Alice"] = 95



// 3. “Bob”의 점수를 삭제하고, 남은 학생들의 점수를 출력
students.removeValue(forKey: "Bob")

for (name, score) in students {
    print("\(name)의 점수는 \(score)점")
}


// 1. 과일 목록 세트 선언
var fruits: Set<String> = ["Apple", "Banana", "Orange"]


// 2. “Banana”가 이미 존재하는지 확인하고, 존재하면 “Mango”를 추가하세요
if fruits.contains("Banana") {
    fruits.insert("Mango")
}

// 3. 세트에 있는 모든 과일을 반복문으로 출력하세요
for fruit in fruits {
    print(fruit)
}


// 1. 네트워크 요청 상태 열거형 정의
enum NetworkState {
    case idle
    case requesting
    case success(String)
    case failure(String)
}

// 2. 네트워크 요청 상태를 나타내는 변수 선언
var currentState: NetworkState = .success("데이터 로드 완료")


// 3. switch문으로 상태에 맞는 출력 작성
switch currentState {
case .idle: //아직 아무 네트워크 요청도 보내지 않은 상태
    print("현재 대기 상태입니다.")
case .requesting: //지금 서버에 데이터를 요청하는 중인 상태
    print("요청 중입니다...")
case .success(let success): // 서버에서 요청이 성공적으로 완료되었을 때
                            // success 안에는 성공 메시지가 들어있 (ex: “데이터 로드 완료”)
    print("요청 성공: \(success)")
case .failure(let error): //서버 요청이 실패했거나 네트워크 문제가 발생했을 때
                          //	error 안에는 실패 사유에 대한 설명이 담겨있
    print("요청 실패: \(error)")
}