본문 바로가기

분류 전체보기137

함수 전달인자명과 파라미터명 함수 기본 형태 func 함수이름(전달인자명 파라미터명: 파라미터타입) -> 반환타입 { statement } 함수이름(전달인자명: 파라미터값) 사용 함수 내부에서 전달인자를 사용할때는 파라미터명을 사용한다. func greeting(to friend: String) { print("Hello \(friend)") } 함수를 호출할 때에는 전달인자명을 사용한다. greeting(to: "Jiseong") 이유 함수를 호출할 때 함수 사용자의 입장에서 파라미터의 역할을 명확히 표현하고자 할 때 전달인자명을 지정하여 사용한다. 위 코드를 예로 들면 전달인자명 to를 사용하여 greeting을 누구한테(to) 하는지 함수명과 전달인자명이 어우러져 일맥상통하게 표현하려 사용하는 것이다. 헷갈렸던 점 argume.. 2022. 2. 12.
Swift) Optional Binding 📌 Optional Binding 변수에 값이 저장될지 아닐지를 확실할 수 없을 떄 Optional을 사용한다. Optional Binding은 Optional 타입의 변수값을 꺼내오는 방법중 하나이다. 🐶 guard guard를 사용한 옵셔널 바인딩을 알아보기전 guard부터 알아보겠다. guard 뒤에 따라붙는 코드의 실행 결과가 True일 때 guard문 밑의 코드가 실행된다. False라면 else블록 내부 코드만 실행된다. 이 내부 코드에는 자신보다 상위의 코드블록을 종료하는 코드가 반드시 들어가야한다. Ex) return, break, continue, throw 🐱 guard let guard let은 예외사항을 처리할 때 주로 쓰인다. 옵셔널을 벗겼을 때 값이 nil이면 더이상 코드를 실행.. 2022. 2. 10.
ㅎ;; 벨로그에서 다시 이사왔어요^^;; 노스텔지아^^ 벨로그에 썻던거 싹다 옮길것임 2022. 2. 10.
[Programmers] 체육복 https://programmers.co.kr/learn/courses/30/lessons/42862#qna 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 제한사항 전체 학생의 수는 2명 이상 30명 이하입니다. 체육복을 도난당한 학생의 수는 1명 이상 n명 이하이고 중복되는 번호는 없습니다. 여벌의 체육복을 가져온 학생의 수는 1명 이상 n명 이하이고 중복되는 번호는 없습니다. 여벌 체육복이 있는 학생만 다른 학생에게 체육복을 빌려줄 수 있습니다. 여벌 체육복을 가져온 학생이 체육복을 도난당했을 수 있습니다.. 2021. 9. 28.
[Programmers] K번째 수 제한사항 array의 길이는 1 이상 100 이하입니다. array의 각 원소는 1 이상 100 이하입니다. commands의 길이는 1 이상 50 이하입니다. commands의 각 원소는 길이가 3입니다. // // main.swift // Programmers_K번째수 // // Created by 임지성 on 2021/09/25. // import Foundation func solution(_ array:[Int], _ commands:[[Int]]) -> [Int] { var result = [Int]() commands.forEach { result.append(array[$0[0]-1...$0[1]-1].sorted()[$0[2]-1]) } return result } commands.for.. 2021. 9. 25.
[Swift] Closure 클로저(Closure).. Swift 사용에 있어서 빠질 수 없는 것이다. 클로저란? 클로저(Closure)는 코드블럭으로 C와 Objective-C의 블럭(block)과 다른 언어의 람다(lambda)와 비슷하다. 사용자의 코드 안에서 전달되어 사용할 수 있는 로직을 가진 중괄호“{}”로 구분된 코드의 블럭이며, 일급 객체의 역할을 지닌다. 일급 객체는 전달 인자로 보낼 수 있고, 변수/상수 등으로 저장하거나 전달할 수 있으며, 함수의 반환 값이 될 수도 있다. 클로저는 어떤 상수나 변수의 참조를 캡쳐(capture)해 저장할 수있다. Swift에서 클로저 표현은 최적화 되어서 간결하고 명확하다. 이 최적화에는 다음과 같은 내용을 포함한다. 문맥(context)에서 인자 타입(parameter type.. 2021. 9. 24.