TIL 240116
코딩테스트 입문 알고리즘 문제를 풀면서 고민했던 부분을 정리해보려 한다.
계산 문제를 풀 때 제한 사항
제한 사항
- 0 ≤ num1 ≤ 100
- 0 ≤ num2 ≤ 100
다음과 같은 제한 사항 조건을 지켜야하는데 , 와 && 모두 사용이 가능해서
이 부분이 굉장히 궁금했다! 이번 기회에 궁금증을 풀어보려 한다. 🧐
결론적으로
콤마(,)는 조건(condition)을 이어주는 용도로 쓰는 것이고
&& 는 boolean expression를 결합하여 참이 되게 하는 논리 연산자이다.
우선 역할을 정리해보면 다음과 같다.
1. 콤마(,):
- 여러 문장(조건)을 한 줄에 나열할 때 사용된다.
- 주로 변수나 상수를 같은 줄에 선언할 때 쓰인다.
let a = 5, b = 10, c = 15
2. && : 논리 연산자 (AND):
- 논리 AND 연산자는 두 개의 불리언 표현식이 모두 참일 때만 전체 표현식이 참이 된다.
- 주로 조건문에서 사용된다.
if x > 0 && y > 0
조건문에서의 사용
if num1 >= 0 && num1 <= 100 { … } // works
if num1 >= 0, num1 <= 100 { … } // error
첫 번째의 경우 '&&' 논리 AND 연산자가 사용되어 두 개의 조건이 동시에 참일 때 블록이 실행된다.
두 번째의 경우는 Swift 에서는 ',' 콤마를 사용하여 여러 조건을 결합하는 문법을 지원하지 않기 때문에 유효하지 않다.
,(Comma) VS &&
// comma
if (num1 >= 0 && num1 <= 100), (num2 >= 0 && num2 <= 100)
// &&
if (num1 >= 0 && num1 <= 100) && (num2 >= 0 && num2 <= 100)
둘 다 기능적으로는 동일하게 동작한다.
두 개의 조건이 동시에 참일 때만 전체 조건이 참이 되도록 처리한다.
▼ 🍎 if Statement
https://docs.swift.org/swift-book/documentation/the-swift-programming-language/statements/
(1) condition-list: codition에 Comma를 사용해 조건을 추가한 것이다.
- condition
- condition, condition, condition, ...
(2) condition: 스위프트 공식 문서에 condiotion은 4가지 항목을 포함한다.
- expression
- avilabiliy-condition
- case-condition
- optional-binding-condition
-> expression이 condition에 속한다는 것을 알 수 있다.
+) Optional Binding의 경우에는 &&와 ,를 구분하여 꼭 콤마로 이어줘야 한다.
'Devlog👩🏻💻 > Swift' 카테고리의 다른 글
[Swift] Optional (3) | 2024.03.08 |
---|---|
[Swift] 컬렉션 타입(Collection Type) - Dictionary, Set (2) | 2024.01.24 |
[Swift] 컬렉션 타입(Collection Type) - Array (3) | 2024.01.23 |
[Swift] String 문자열에서 Index 접근하기(String.Index) (2) | 2024.01.18 |
[Swift] 타입 추론(Type Inference)과 타입 어노테이션(Type Annotation) (2) | 2024.01.17 |