[TIL] Swift - 함수

신승현·2024년 1월 22일

TIL

목록 보기
6/72

1. 함수

  • 함수는 대부분의 프로그래밍 언어에서 지원하는 개념으로, 프로그램 실행 과정 중에 독립적으로 처리되는 부분을 구조화한 객체를 의미한다.
  • Swift는 함수형 프로그래밍 패러다임을 채택하고 있어, 함수형 프로그래밍의 특성을 이해하는 것은 중요하다.

2. 함수 사용의 이점

  • 동일한 코드를 여러곳에서 사용 시, 함수화하면 함수 호출만으로 처리가 가능하다.
  • 가독성이 좋아지고, 코드와 로직을 이해하기 쉽다.
  • 로직을 변경시, 함수 내부만 수정하면 되기 때문에 유지보수가 용이하다.

3. 사용자 정의 함수

  • 반환값이 없는 함수의 경우에도 return키워드를 종종 사용하는데, 함수의 실행을 명시적으로 종료할 때 사용한다.
// 1. 매개변수와 반환값이 모두 있는 함수
func solution(num1: Int, num2: Int) -> Int {
	return 0;
}

// 2. 매개변수는 있지만, 반환값이 없는 함수
func solution(num1: Int, num2: Int) {
	let result = num1 + num2;
}

// 3. 매개변수는 없지만, 반환값이 있는 함수
func solution() -> Int {
	return 0;
}

// 4. 매개변수와 반환값이 모두 없는 함수
func solution() {
	let result = 0;
}

4. 함수의 호출

  • 함수를 호출할 때는 함수명(인자레이블: 인자값)으로 호출할 수 있다.
solution(num1: 6, num2: 10); // 함수의 이름만으로 호출
solution(num1:num2:)(6, 10); // 함수의 식별자를 사용해 호출

5. 함수의 반환값

  • 함수는 반드시 하나의 값만을 반환하지만, 집단 자료형에 담아 반환하면 여러개의 값을 반환 할 수 있다.
func getArray() -> Array<String> {
	var contries: String = ["Korea", "Japan", "China"]; // 배열(Array)
    return contries;
}

func getDictionary() -> Dictionary<String, String> {
	var capitals: [String: String] = ["Korea": "Seoul", "Japan": "Tokyo", "China": "Beijing"]; // 사전(Dictionary)
    return capitals;
}

func getTuple() -> (Int, String) {
	var grade: Int = 100;
    var subject: String = "국어";
    
    return (grade, subject); // 튜플(Tuple)
}
profile
개발자

0개의 댓글