" /> IOS 앱 개발 - Swift 문법 | BlackWerf's Blog
포스트

IOS 앱 개발 - Swift 문법

Swift 문법

상수 및 변수 선언하기

상수

선언방법
  • let

    • 자료형 입력은 필수가 아님
  • 예시)

    1
    2
    3
    
    let s1: Int = 10 //Int형 상수로 10으로 초기화 됨
    let s2: String = "Monday" //String형 상수로, "Monday"로 초기화 됨
    let s1 = 10 //컴파일러에서 Int형 상수로 인식됨
    
특징
  • 상수 변수는 한 번만 초기화가 가능함

  • 자료형을 명시하지 않더라도 컴파일러가 자동으로 인식함


변수

선언방법
  • var

  • 예시)

    1
    2
    3
    4
    
    var a  = 10; 
    var b : String = "String"
    var c : String
    c = "I am String"
    
    특징
    • 프로그램 동작 중 값이 변경 될수도 있음
    • 자료형을 명시하지 않더라도 컴파일러가 자동으로 인식함
종류
  • Option

주의점

  • 변수와 상수 이름은 소문자 또는 _로 시작함
    • lowerCamelCase방식으로 표기함
  • 변수와 상수는 선언 후 반드시 초기화 해야 함

자료형

정수

종류
  • Int8 / UInt8
    • 8비트
  • Int16 / UInt32
  • Int32 / UInt32
  • Int64 / UInt64
  • Int / Uint
    • 64비트 크기의 정수
    • Int.min : 최소값
    • Int.max : 최대값

실수

종류
  • Float
    • 32비트
  • Double
    • 64비트
    • 자료형을 명시하지 않을 경우 기본값임
1
2
3
var a : Float = 0.0 //Float형
var b : Double = 0.0 //Double형
var c = 0.0 //Double형

불린

종류
  • Bool
    • 8비트
특징
  • true와 false 둘 중 하나의 값만을 가짐
1
2
var a : Bool = true
var b : Bool = false

문자

종류

문자열

종류

형 변환

자동 형변환

종류 강제 형변환
사용 방법
  • 변수타입 변수명(변환할 값)
예시
1
2
3
var a : Int8 = 20
var b : Int32 =20
var c = Int32(a) + b

옵셔널

정의

  • “값이 없음”을 표현하는 새 개념
  • 일반 변수와 다르게 값을 가지고 있지 않을 수도 있음
    • 초기화가 되지 않을 경우, nil로 초기화 됨
  • nil값을 할당 할 수 없는 타입을 non-optional type이라고 함

사용 방법

  • 자료형 뒤에 ?를 붙임

    • var 변수명 : 자료형?
    • let 상수이름 : 자료형?
    1
    2
    
    var a : Int?
    print(a) //nil
    

Wrapping & Unwrapping

1
2
var a : Int? = 10
print(a) //Optional(10)
  • 위 코드에서 옵셔널을 사용하면 상자 내에 정수 10이 저장됨
    • 이를 Wrapping이라고 함
  • 10을 꺼내기 위해서는 a 뒤에 !를 추가해야 함
    • 이를 Unwrapping이라고 함
1
2
var a : Int? = 10
print(a!) //10

Optional BInding

정의
  • Swift에서는 Optional 변수에 저장된 값을 값을 확인 및 꺼내는 과정을 동시에 처리해주는 구문을 제공함

    이를 Optional BInding이라고 함

사용 방법
  • 상수 = 옵셔널 변수
  • 상수 = 옵셔널 값을 반환하는 메소드
1
2
3
4
5
var a : Int? = 100
if let b = a { //b가 nil이 아니면 true
	print(b) //100
  //Optional Binding을 사용시 !를 사용할 필요가 없음
}
  • 여러 변수를 바인딩 하는 경우에는, if 조건문에 변수를 여러개 생성하여 조건문을 생성하면 사용 가능함

연산자

산술 연산자

종류
  • +
  • -
  • *
  • /
  • %
  • &+ : a & b
  • &- : a & b
  • &*: a & b

비교 연산자

종류
  • ==
  • !=
  • <
  • <=
  • =

항등 연산자

종류
  • ===
  • !==

논리 연산자

종류
  • &&
  •  
  • !

비트 연산자

종류

대입 연산자

종류

조건 연산자

종류

범위 연산자

종류

반복문

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.