[Swift] Swift Standard Library – Ranges

Numbers and Basic Values

Apple 문서를 참고로 했으며 내가 알지 못하는 모르는 부분에 대해 정리한다.

Ranges
struct Range : A half-open interval over a comparable type, from a lower bound up to, but not including, an upper bound.

struct ClosedRange : An interval over a comparable type, from a lower bound up to, and including, an upper bound.

한국말로 하면 개구간 , 폐구간이다. 한국말 정말 어렵다.

하지만 그림으로 본다면?

스크린샷 2017-10-09 오전 4.58.57

스크린샷 2017-10-09 오전 5.01.26.png

단번에 이해함.
(사실 이미 알고 있는 개념인데 영어로 받아들이는게 아직도 벽이 있다)

스크린샷 2017-10-09 오전 5.04.37.png

무다 무다!

Range

Operator~=(_:_:)

  • Returns a Boolean value indicating whether a value is included in a range.
static func ~=(pattern: Range, value: Bound) -> Bool

코드로 하면 contains와 동일한 기능을 하는 편리한 opeator.

let chosenNumber = 3
if 0..<10 ~= chosenNumber {
print("\(chosenNumber) is a single digit.")
}
// Prints "3 is a single digit."
if (0..<10).contains(chosenNumber) {
print("\(chosenNumber) is a single digit.")
}
// Prints "3 is a single digit."

clamp 영어 의미를 알아야 이해가 쉽다.

(1...7).clamped(to: 3...10)
// 3...7

References

 

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중