choco5958
지마의 개발일기
choco5958
전체 방문자
오늘
어제
  • 전체보기 (46)
    • 개발 (34)
      • Java (0)
      • JavaScript (7)
      • Php (4)
      • Ios(Swift) (23)
    • 프론트엔드 (7)
      • Html (1)
      • Css (5)
    • 백엔드 (0)
      • Mysql (0)
      • Oracle (0)
      • MongoDB (0)
    • 서버 (2)
      • Linux (2)
    • 일상 (3)
      • 반려동물 (1)
      • 베이킹 (2)
      • 맛집 (0)

블로그 메뉴

  • 홈

공지사항

인기 글

태그

  • ios#swift#스위프트#클로저#애플#아이폰
  • ios#swift#스위프트#애플#아이폰#고차함수
  • ios#swift#스위프트#아이폰#애플#함수
  • ios#swift#스위프트#애플#아이폰#try-catch#오류처리
  • ios#swift#스위프트#조건문#아이폰#애플
  • php#linux#soap#리눅스
  • ios#swift#스위프트#아이폰#애플#상속
  • ios#swift#스위프트#아이폰#클래스#애플
  • ios#swift#스위프트#아이폰#애플#프로토콜
  • ios#swift#스위프트#프로퍼티#애플#아이폰
  • ios#swift#스위프트#애플#아이폰#assert#guard
  • ios#swift#스위프트#구조체#문법#애플#아이폰
  • ios#swift스위프트#애플#아이폰#클래스#구조체
  • swift#ios#스위프트#애플#아이폰#init#초기화구문
  • ios#swifth#스위프트#열거형#아이폰#애플
  • php#500error
  • ios#swift#스위프트#애플#아이폰
  • ios#swift#스위프트#아이폰#애플#옵셔널체이닝
  • 자바스크립트#javascript#js#개발#웹개발
  • ios#swift#스위프트#아이폰#애플#타입캐스팅

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
choco5958

지마의 개발일기

개발/Ios(Swift)

IOS 스위프트(Swift) 문법 - 고차함수

2021. 8. 26. 00:26

고차함수란?

다른 함수를 전달 인자로 받거나 함수 실행의 결과를 함수로 반환하는 함수

 

스위프트에서 제공하는 고차함수

- map

- filter

- reduce

 

//map 컨테이너 내부의 기존 데이터를 변형하여 새로운 컨테이너를 생성
let numbers = [0,1,2,3]  //[0,1,2,3]
let mapArray = numbers.map { (number) -> Int in //[0,2,4,6]
    return number * 2
}
print("map \(mapArray)")  //"map [0, 2, 4, 6]\n"

//filter 컨테이너 내부의 값을 걸러서 새로운 컨테이너로 추출
let intArray = [10,5,20,13,4]  //[10, 5, 20, 13, 4]
let filterArray = intArray.filter { $0 > 5 }
print("filter \(filterArray)")  //"filter [10, 20, 13]\n"

//reduce 컨테이너 내부의 요소를 하나로 통합
let someArray = [1,2,3,4,5]  //[1, 2, 3, 4, 5]
let reduceResult = someArray.reduce(0) {  //15
    (result: Int, element: Int) -> Int in
    print("\(result) + \(element)")
    return result + element
}

print("reduce \(reduceResult)")  //"reduce 15\n"

'개발 > Ios(Swift)' 카테고리의 다른 글

IOS 스위프트(Swift) 문법 - 클로저  (0) 2021.08.26
IOS 스위프트(Swift) 문법 - try-catch  (0) 2021.08.25
IOS 스위프트(Swift) 문법 - 옵셔널 체이닝  (0) 2021.08.25
IOS 스위프트(Swift) 문법 - 열거형  (0) 2021.08.25
IOS 스위프트(Swift) 문법 - 익스텐션  (0) 2021.08.25
    '개발/Ios(Swift)' 카테고리의 다른 글
    • IOS 스위프트(Swift) 문법 - 클로저
    • IOS 스위프트(Swift) 문법 - try-catch
    • IOS 스위프트(Swift) 문법 - 옵셔널 체이닝
    • IOS 스위프트(Swift) 문법 - 열거형
    choco5958
    choco5958
    안녕하세요. 개발 및 일상 팁 들을 포스팅하는 블로그입니다.

    티스토리툴바