[Swift] 상수와 변수, 함수

김형근·2024년 7월 20일

[Swift] 문법

목록 보기
2/20

🍏 Swift의 상수와 변수에 대한 이해

Swift는 안전하고 효율적인 프로그래밍 언어로, 상수(constant)와 변수(varibale)를 통해 데이터를 저장하고 관리할 수 있습니다.

1. 상수 (Constant)

상수는 선언 후 값이 변경되지 않는 데이터를 저장할 때 사용합니다. Swift에서는 let 키워드를 사용하여 상수를 정의합니다. 상수를 사용하는 주된 이유는 데이터가 변경되지 않도록 보장하기 위함입니다. 예를 들어, 물리 상수나 설정값 등의 변경되지 않아야 하는 값을 저장할 때 유용합니다.

let pi: Double = 3.14159 // 원주율을 상수로 정의
let maximumLoginAttempts = 3 // 최대 로그인 시도를 상수로 정의

위의 코드에서 pi는 원주율을 나타내는 상수이며, maximumLoginAttempts는 최대 로그인 시도를 나타내는 상수입니다. 이 값들은 프로그램들이 실행되는 동안 변경될 수 없습니다.

2. 변수 (Variable)

변수는 선언 후 값이 변경 가능한 데이터를 저장할 때 사용합니다. Swift에서는 var 키워드를 사용하여 변수를 정의합니다. 변수를 사용하면 프로그램의 실행 중에 데이터를 업데이트하거나 변경할 수 있습니다. 예를 들어, 사용자 입력이나 계산 결과를 저장할 때 변수가 필요합니다.

var temperature: Double = 20.0 // 현재 온도를 나타내는 변수
temperature = 25.5 // 온도를 변경

위의 코드에서 temperature는 현재 온도를 저장하는 변수입니다. 이 변수의 값은 프로그램 실행 중에 언제든지 변경될 수 있습니다.

3. 상수와 변수의 비교

  • 상수는 한번 설정하면 그 값을 변경할 수 없지만, 변수는 언제든지 값을 변경할 수 있습니다.
  • 상수는 프로그램의 안전성을 높여주며, 변경되지 않아야 하는 값에 적합합니다.
  • 변수는 유동적인 데이터를 다룰 때 유용합니다.

🍎 Swift의 함수

함수는 특정 작업을 수행하는 코드 블록으로, 프로그램의 재사용성과 가독성을 높이는 데 중요한 역할을 합니다. Swift에서 함수는 입력값을 받아 특정 작업을 수행하고, 결과값을 반환할 수 있습니다.

1. 함수의 정의

Swift에서 함수를 정의할 때는 func 키워드를 사용합니다. 함수는 이름, 매개변수, 반환 타입 그리고 함수 본체로 구성됩니다.

func greet(name: String) -> String {
    return "안녕하세요, \(name)님!"
}

위의 코드에서 greet라는 함수는 하나의 매개변수 name을 받아서, 인사 메시지를 반환합니다. 반환 타입은 String으로 정의되어 있습니다.

2. 함수 호출

정의된 함수를 호출할 때는 함수 이름과 괄호 안에 필요한 인자를 전달합니다.

let message = greet(name: "홍길동")
print(message) // 출력: 안녕하세요, 홍길동님!

위의 코드에서 greet 함수를 호출하여 "홍길동"이라는 이름을 전달하고, 그 결과를 message 변수에 저장한 후 출력합니다.

3. 매개변수와 반환값

- 매개변수: 함수가 입력값을 받을 때 사용하는 변수를 말합니다. 여러 개의 매개변수를 정의할 수 있으며, 각 매개변수는 타입을 명시해야 합니다.

func add(a: Int, b: Int) -> Int {
    return a + b
}

let sum = add(a: 5, b: 3) // sum은 8이 됩니다.
  • 반환값: 함수가 작업을 수행한 후 결과를 반환하는 값입니다. 반환 타입을 명시해야 하며, return 키워드를 사용하여 값을 반환합니다.

4. 기본 매개변수와 가변인자

Swift에서는 기본값이 있는 매개변수와 가변 인자를 사용할 수 있습니다.

  • 기본값이 있는 매개변수: 함수 정의 시 매개변수에 기본값을 설정할 수 있습니다.
func greet(name: String = "손님") -> String {
    return "안녕하세요, \(name)님!"
}

print(greet()) // 출력: 안녕하세요, 손님님!


  • 가변 인자: 함수에 여러 개의 값을 전달할 수 있도록 하는 매개변수입니다. 가변 인자는 ...로 표시합니다.
func sumOfNumbers(numbers: Int...) -> Int {
    return numbers.reduce(0, +)
}

let total = sumOfNumbers(numbers: 1, 2, 3, 4, 5) // total은 15가 됩니다.

💡 연습 코드

import UIKit

/*
 변수 : 변할 수 있는 값을
 var 변수명: 데이터 타입 = 값
 */

var name: String = "Geuni"
var age: Int = 20

name
name = "근이"

age
age = 26


/*
 상수 : 변하지 않는 일정한 값
 let 상수형: 데이터 타입 = 값
 */

let one: Int = 1
let two: Int = 2


/*
 함수: 어떤 작업을 수행하는 코드의 집합
 func 함수명(파라미터 이름: 데이터 타입) -> 변환타입{
  //특정 작업을 수행하는 코드를 작성
    return 반환값
 }
 */

func sayHello(name: String) -> String{
    return "Nice to meet you, \(name)"
}

sayHello(name: "그니")

func introduce(name: String, age: Int) -> String {
    return "Hi, My name is \(name) , I'm \(age)"
}

introduce(name: name, age: age)

func add(a: Int, b: Int) -> Int{
    return a * b
}

add(a: 2, b: 3)
profile
꾸준히 기록하기

0개의 댓글