카테고리: iOSIT

iOS 개발 #7 if, else조건문을 활용한 조건 처리

개요

iOS 개발 입문자를 위해 SwiftObjective-C에서 사용하는 ‘if, else 문‘에 대한 설명, 조건문의 역할, 기본 if 문, if-else 문, 다중 조건 처리, 논리 연산자, 예외 처리, 중첩 조건문까지 자세하게 알아보세요.

이번 글에서는 프로그래밍에서 중요한 역할을 하는 “if, else 조건문”에 대해 알아보겠습니다. 이 문은 조건에 따라 다른 동작을 수행하도록 해주는 중요한 도구 중 하나입니다. 이 글을 통해 if, else 문의 기본 개념부터 고급 활용 방법까지 알아보도록 하겠습니다.

if, else 조건문의 역할

if, else 문은 조건을 평가하고, 그 조건의 결과에 따라 프로그램의 흐름을 제어합니다. 이를 통해 다양한 상황에서 다른 동작을 수행할 수 있게 됩니다. 예를 들어, 특정 조건이 참일 때는 A를 실행하고, 거짓이면 B를 실행하는 것이 가능해집니다.

기본적인 if 조건문

가장 기본적인 if 문의 형태는 다음과 같습니다:

if 조건 {
    // 조건이 참일 때 실행되는 코드
}
if (조건) {
    // 조건이 참일 때 실행되는 코드
}

예를 들어, 사용자가 로그인 했는지를 확인하는 간단한 코드를 살펴봅시다:

if isLoggedIn {
    print("로그인되었습니다.")
}
if (isLoggedIn) {
    NSLog(@"로그인되었습니다.");
}

위 코드는 isLoggedIn 변수가 참일 때 “로그인되었습니다.”라는 메시지를 출력합니다. 이것은 if 문의 가장 간단한 형태입니다.

if-else 문

if 문은 단순한 참/거짓 여부를 다루는 데 사용됩니다. 그러나 종종 더 복잡한 상황에서는 두 가지 경우 모두를 다루어야 할 때가 있습니다. 이때 if-else 문을 사용합니다:

if 조건 {
    // 조건이 참일 때 실행되는 코드
} 
else {
    // 조건이 거짓일 때 실행되는 코드
}
if (조건) {
    // 조건이 참일 때 실행되는 코드
} 
else {
    // 조건이 거짓일 때 실행되는 코드
}

예를 들어, 로그인 여부에 따라 다른 메시지를 출력하는 코드를 보겠습니다:

if isLoggedIn {
    print("로그인되었습니다.")
} else {
    print("로그인이 필요합니다.")
}
if (isLoggedIn) {
    NSLog(@"로그인되었습니다.");
} else {
    NSLog(@"로그인이 필요합니다.");
}

위 코드는 isLoggedIn 변수가 참이면 “로그인되었습니다.”를 출력하고, 그렇지 않으면 “로그인이 필요합니다.”를 출력합니다.

다중 조건: else if

복잡한 상황에서는 두 가지 이상의 조건을 다뤄야 할 때가 있습니다. 이때 else if 구문을 사용합니다. 다중 조건을 처리할 수 있도록 확장된 if 문 형식입니다:

if 조건1 {
    // 조건1이 참일 때 실행되는 코드
} 
else if 조건2 {
    // 조건2가 참일 때 실행되는 코드
} 
else {
    // 모든 조건이 거짓일 때 실행되는 코드
}
if 조건1 {
    // 조건1이 참일 때 실행되는 코드
} 
else if 조건2 {
    // 조건2가 참일 때 실행되는 코드
} 
else {
    // 모든 조건이 거짓일 때 실행되는 코드
}

예를 들어, 사용자의 연령에 따라 다른 티켓 가격을 계산하는 코드를 보겠습니다:

var ticketPrice = 0 // 티켓 가격 정보를 가지고 있을 변수 선언

// age가 18 미만이면
if age < 18 {
    ticketPrice = 10
} 
// age가 18이상 이고 65이하 이면
else if age >= 18 && age <= 65 {
    ticketPrice = 20
} 
// 그 외 나머지
else {
    ticketPrice = 15
}
int ticketPrice = 0; // 티켓 가격 정보를 가지고 있을 변수 선언

// age가 18 미만이면
if (age < 18) {
    ticketPrice = 10;
} 
// age가 18이상 이고 65이하 이면
else if (age >= 18 && age <= 65) {
    ticketPrice = 20;
} 
// 그 외 나머지
else {
    ticketPrice = 15;
}

위 코드는 연령에 따라 다른 티켓 가격을 설정합니다. 조건1은 18 미만일 때, 조건2는 18세 이상 65세 이하일 때, 나머지 경우는 조건3이 적용됩니다.

조건 연산자와 복합 조건

if, else 문에서 조건은 불리언 값인 변수나 식일 필요는 없습니다. 다양한 연산자를 사용하여 조건을 생성할 수 있습니다. 주로 사용되는 연산자 중 하나는 논리 연산자입니다.

논리 연산자는 조건을 조합하는 데 사용됩니다. 예를 들어, &&는 논리곱(AND)을 나타내며, ||는 논리합(OR)을 나타냅니다. 다음은 이를 활용한 예시입니다:

if isRegistered && hasPaidMembership {
    print("등록되었고 유료 멤버십을 가지고 있습니다.")
}
if (isRegistered && hasPaidMembership) {
    NSLog(@"등록되었고 유료 멤버십을 가지고 있습니다.");
}

위 코드는 isRegistered가 참이고 hasPaidMembership도 참일 때 “등록되었고 유료 멤버십을 가지고 있습니다.”를 출력합니다.

예외 처리

프로그램에서 오류를 처리하거나 예외 상황을 다루는 데 if, else 문을 활용할 수 있습니다. 예외 처리는 프로그램이 예상치 못한 상황에 대처하는 중요한 부분입니다.

if let data = try? fetchData() {
    // 데이터를 성공적으로 가져왔을 때 실행되는 코드
} 
else {
    // 데이터 가져오기에 실패하면 실행되는 코드
}
NSError *error;
NSData *data = [self fetchDataWithError:&error];

if (data != nil) {
    // 데이터를 성공적으로 가져왔을 때 실행되는 코드
} else {
    // 데이터 가져오기에 실패하면 실행되는 코드
}

위 코드는 fetchData() 함수에서 데이터를 가져오는 시도를 하고, 성공하면 데이터를 처리하고, 실패하면 오류를 처리합니다.

조건문의 중첩

if, else 문은 중첩하여 사용할 수 있습니다. 이를 통해 복잡한 조건을 다룰 수 있습니다. 예를 들어, 사용자의 로그인 상태와 권한에 따라 서로 다른 동작을 수행하는 코드를 보겠습니다:

if isLoggedIn {
    if isAdmin {
        print("관리자로 로그인되었습니다.")
    } 
    else {
        print("일반 사용자로 로그인되었습니다.")
    }
} 
else {
    print("로그인이 필요합니다.")
}
if (isLoggedIn) {
    if (isAdmin) {
        NSLog(@"관리자로 로그인되었습니다.");
    } 
    else {
        NSLog(@"일반 사용자로 로그인되었습니다.");
    }
} 
else {
    NSLog(@"로그인이 필요합니다.");
}

위 코드는 먼저 사용자가 로그인되었는지 확인하고, 그 다음에 사용자가 관리자인지 확인합니다. 이러한 중첩된 if, else 문을 사용하여 복잡한 상황을 처리할 수 있습니다.

결론

if, else 문은 프로그래밍에서 중요한 역할을 합니다. 이를 사용하여 조건에 따라 다른 동작을 수행할 수 있으며, 복잡한 상황에서도 유용하게 활용할 수 있습니다. 기본적인 if 문부터 중첩된 조건문과 논리 연산자 활용까지 알아보았습니다. if, else 문은 iOS 개발에서도 빈번하게 사용되므로 잘 이해하고 활용하는 것이 중요합니다. 계속해서 연습하고, 다양한 상황에서 활용할 수 있도록 익숙해지기를 권장합니다.

SOOAR

코멘트 보기

  • Your blog has become my go-to source for inspiration and motivation Thank you for consistently delivering high-quality content

최근 게시물

실업급여 최대한 활용하는 법 2024년 최신 정보 완벽 정리

실업급여는 일자리를 잃은 후 경제적 어려움을 겪고 있는 분들에게 큰 도움이 되는 제도로, 고용보험에 가입한…

% 수일전에

제4이동통신사 스테이지엑스 자격 취소와 법적 대응

스테이지엑스의 제4이동통신사 자격이 자본금 부족 문제로 과기정통부에 의해 취소될 위기에 처했습니다. 스테이지엑스는 법적 대응을 예고하며…

% 수일전에

삼성전자 접근성 기능의 모두를 위한 기술 활용법

삼성전자는 저시력자와 청각 장애인을 위한 다양한 접근성 기능을 제공합니다. 릴루미노 윤곽선, 토크백, 실시간 자막, 주변…

% 수일전에

iOS Swift UILabel 둥근 모서리를 적용 해보자

iOS 앱 개발에서 UILabel 둥근 모서리 뷰의 시각적 요소를 조정하는 것은 사용자 경험을 향상시키는 중요한…

% 수일전에

프리랜서 고용 시 체크리스트 4가지 반드시 확인해야 할 필수 사항들

프리랜서 고용 시 체크리스트는 뭘까? 프리랜서를 고용하는 것은 많은 기업과 개인에게 유용한 방법이 될 수…

% 수일전에