본문 바로가기
IOS/Swift

[Swift] 기본 연산자(Basic Operators)

by 얘리밍 2022. 12. 22.
320x100
728x90

 

📌 범위 연산자

 

닫힌 범위 연산자

범위가 (a...b) 일 때, a부터 b까지(b를 포함❗) 범위를 실행한다.  (점 세개)

for index in 1...5 {
	print("\(index) x  5 is \(index * 5)")
    //1부터 5까지 실행된다. 
}

파이썬과는 좀 다른 느낌이다

헷갈리지 말자..

 

 

그렇다면 5 이전까지만 실행하고 싶다면.. ? 아래에 답이 있다.

 

 

 

 반 열림 범위 연산자

< 연산자를 사용하면 된다. (a..< b) 는 b가 포함되지 않은 a부터 b까지의 범위를 실행한다. (점 두개)  

0부터 시작하는 배열을 탐색할 때 사용하면 용이하다. 

let names = ["Anna", "Alex", "Brian", "Jack"]
let count = names.count
for i in 0..<count {
    print("Person \(i + 1) is called \(names[i])")
}

 

 

 

단 - 방향 범위 

인덱스를 사용하여 배열의 원하는 인덱스 부터 혹은 까지 실행할 수 있다. 

let names = ["Anna", "Alex", "Brian", "Jack"]

for name in names[2...]{
	//배열 인덱스 2부터 시작한다. 
    //Brian
    //Jack
	print(name)
}

for name in names[...2] {
   //배열 인덱스 2까지 수행한다. 
   //Anna
   //Alex
   //Brian
	print(name)
}

 

단 방향 범위에서 반 열림 연산자를 사용할 수 있다. 

for name in names[..<2]{
    //인덱스 2전 까지 즉, 인덱스 1까지만 실행
    //Anna
    //Alex
	print(name)
}

 

 

 

다음과 같이 범위에서 값이 들어있는 지 체크할 수 있다. 

let range = ...5   // 5까지의 범위 (음수 포함) 

range.contains(7)   //false
range.contains(4)   //true
range.contains(-1)  //true

 

 

 

📌 논리 연산자 

 

논리적 NOT 연산자

!a는 부울 값을 true 면 false 로 false 면 true 로 값을 반대로 만든다. 

let allowEdit = false
if !allowEdit {
	print("Can not Edit")
 }

 

뭔가 헷갈린다...

아래를 보면 이해하기 쉽다 

 

 

 

!isCatfalse 이다. 

if !isCat 이라 함은 false 일 때, 아래 구문을 실행한다는 뜻이다. 

let isCat = true;

if isCat {
	print("😺")
}

if !isCat {
	// 고양이가 아닐 때,
	// 즉, false 일 때 실행
   	print("👽")
	
 }

 

 

 

참고 : https://bbiguduk.gitbook.io/swift/language-guide-1/basic-operators

728x90
반응형