오늘은 가장 큰 값과 가장 작은 값을 구하는 max, min에 대해 알아보겠습니다.
max()
1. max(_:_:)
max(_:_:) 함수는 두 개의 비교 가능한 값들 중 더 큰 값을 반환합니다.
아래의 간단한 예시를 보면, a와 b를 비교하여 더 큰 값인 100이 출력되는 것을 확인할 수 있습니다.
let a = 100
let b = 20
let bigger = max(a, b)
print("더 큰 값은: \(bigger)") // 더 큰 값은: 100
반환 값은 x와 y가 동일한 값이라면, 뒤에 위치한 값인 y가 반환됩니다.
2. max()
max()는 "여러 값 중에서 가장 큰 값을 골라서 반환"하는 인스턴스 메서드입니다.
max()는 배열이 비어 있을 경우 nil을 반환하기 때문에, 반환 타입은 Optional입니다.
아래 예시는 Swift 공식 문서에 있는 heights에 있는 요소들 중 가장 큰 값을 찾아내는 예시입니다.
let heights = [67.5, 65.7, 64.3, 61.1, 58.5, 60.3, 64.9]
let greatestHeight = heights.max()
print(greatestHeight)
// Optional(67.5)
min()
1. min(_:_:)
min(_:_:) 함수는 두 개의 비교 가능한 값들 중 더 작은 값을 반환합니다. 단순히 max(_:_:)의 반대라고 생각하시면 되겠습니다.
아래 예시처럼 두 개의 값을 비교하여, 더 작은 값인 20이 출력되는걸 볼 수 있습니다.
let a = 100
let b = 20
let smaller = min(a, b)
print("더 작은 값은: \(smaller)") // 더 작은 값은: 20
반환값은 위의 max(_:_:)와는 반대로, x와 y의 값이 같으면 앞에 위치한 x가 반환됩니다.
2. min()
min()은 여러 개의 값 중에 가장 작은 값을 골라서 반환하는 인스턴스 메서드입니다.
min() 메서드도 배열이 비어 있을 경우 nil을 반환하기 때문에, 반환 타입은 Optional입니다.
아래 예시는 Swift 공식 문서에 나온 예제로, 배열 heights에서 가장 작은 값을 찾아냅니다.
let heights = [67.5, 65.7, 64.3, 61.1, 58.5, 60.3, 64.9]
let lowestHeight = heights.min()
print(lowestHeight)
// Optional(58.5)
공부한 내용을 바탕으로 정리하다보니, 틀린 내용이 있을 수 있습니다.
틀린 내용이나 오타 등은 댓글로 알려주시면 감사하겠습니다.
'📌 Swift' 카테고리의 다른 글
[Swift] 문자열 나누기 split()과 components() 를 알아보자! (0) | 2022.03.29 |
---|---|
[오늘의 Swift 지식] 고차 함수 (map, filter, reduce) (0) | 2022.02.01 |
[오늘의 Swift 지식] stride 함수 (백준 2742번 기찍 N, 역수 구하기) (0) | 2021.10.24 |
[오늘의 Swift 지식] In-Out이란 무엇일까? (0) | 2021.08.24 |
[오늘의 Swift 지식] 전달인자(Argument)와 매개변수(Parameter) (0) | 2021.08.13 |