개요
iOS 개발 입문자를 위해 Swift와 Objective-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 개발에서도 빈번하게 사용되므로 잘 이해하고 활용하는 것이 중요합니다. 계속해서 연습하고, 다양한 상황에서 활용할 수 있도록 익숙해지기를 권장합니다.
Your blog has become my go-to source for inspiration and motivation Thank you for consistently delivering high-quality content