develop

Reference Equal 참조 비교하기 본문

iOS

Reference Equal 참조 비교하기

pikachu987 2021. 1. 31. 20:38
반응형

== 는 비교 연산자로 많이 사용이 되고 인스턴스의 값이 같은지 비교를 한다.

비교 연산자에서 =을 하나 더 붙인 === 연산자가 있는데 이 연산자는 인스턴스의 참조가 같은지

즉, 주소값이 같은지 비교를 한다.

class Example {
    var value: Int?
}
let example1 = Example()
let example2 = Example()
let example3 = example1

print("example1 === example2: \(example1 === example2)")
print("example1 === example3: \(example1 === example3)")
example1 === example2: false
example1 === example3: true

 

example1과 example2는 클래스는 같지만 다른 주소값을 참조하고 있다.

example3은 example1과 같은 주소값을 참조하고 있다.

class Example2: Example {
    
}
let example4 = Example2()
let example5: Example = example4

print("example4 === example5: \(example4 === example5)")
example4 === example5: true
반응형
Comments