Swift 문법 - 변수, 상수, 함수, 반복문

eelijus·2022년 5월 4일
0

Swift Syntax

목록 보기
2/11

변수, 상수, 데이터 타입, 함수, 반복문

노션 링크 : https://eelijus-roirequin.notion.site/Week-1-8ae0073636184287891f2fdf41b3ff8c


변수 (variable)

: 값을 변경할 수 있는 공간

var number = 1206

컴퓨터의 메모리 어딘가에 number라는 메모리 공간이 생기고, 그곳에 1206값을 저장한다.


var name = "suji"

for count in 1...3 {
  print("\(name)\(count)번째 폴짝!")
}

name = "sujilee"

for count in 1...3 {
  printf("\(name)\(count)번째 폴짝!")
}

같은 코드가 두 번 중복되네? 코드를 묶어서 하나의 함수로 만들면 좋아보이는데...

import Foundation

func makeItHope(name: String) {
  for count in 1...3 {
    print("\(name)\(count)번째 폴짝!")
  }
}

var name = "eelijus"
makeItHope(name: name)

상수 (const)

: 값을 변경할 수 없는 공간

let birthday = 1206

변수명과 상수명은 모두 소문자로 시작한다.


기본 데이터 타입

스위프트의 모든 기본 데이터 타입은 구조체를 기반으로 구현되어 있다.

모든 데이터 타입은 대문자로 시작.

  1. 정수 타입

    • Int : 모든 정수
    • UInt : 0을 포함한 모든 양수
    import Foundation
    
    var integer: Int = -1206
    var UnsignedInteger = 1206
    
    print("integer 값: \(integer), unsignedInteger 값: \(unsignedInteger)")
    
    integer = (Int)unsignedInteger
    
    print("integer 바뀐값: \(integer)")

  2. 불리언 타입

    • Bool : true 혹은 false만 값으로 취급
    import Foundation
    
    let amIWrong: Bool = false
    let amIRight: Bool = true
    
    print("나는 틀렸나? \(amIWrong)")
    print("나는 옳은가? \(amIRight)")

  1. 실수 타입

    부동소수점을 사용하는 실수(부동소수 타입)

    • Float : 32bit의 부동소수 표현 -> 숫자 6자리까지만 표현 가능
    • Double : 64bit의 부동소수 표현 -> 15자리의 십진수 표현 가능
    import Foundation
    
    //Float이 수용할 수 있는 범위 넘어서는 숫자를 저장
    //감당할 수 있을만큼만 남김 -> 정확도 떨어짐
    var floatValue: Float = 1234567890.1
    //OUTPUT : 1.234568+09
    let doubleValue: Double = 1234567890.1
    //OUTPUT : 1234567890.1
    
    print("floatValue: \(floatValue) doubleValue: \(doubleValue)")
    
    floatValue = 123456.1234567
    //OUTPUT : 123456.125
    
    print(floatValue)
    

  2. 문자 타입

    • Character : 문자 하나. 유니코드 9 사용가능
    import Foundation
    
    let alphabetA: Characer = "A"
  1. 문자열 타입

    • String : 문자의 나열
    import Foundation
    
    let name: String = "sujilee"
    
    //이니셜라이저를 사용해 빈 문자열 생성
    var introdue: String = String()
    
    //append() 메서드를 사용해 문자열 뒤에 이어붙이기
    introduce.append("내 이름은")
    
    // + 연산자로도 문자열을 붙일 수 있다.
    introduce = introduce + " " + name + "입니다"
    
    //count(): 문자열의 문자 개수 세는 메서드
    print("name의 글자 수: \(name.count)")
    
    //빈 문자열인지 확인해볼 수 있다
    print("introduce는 빈 문자열임? : \(introduce.isEmpty)")
    

    아래는 연산자를 통한 문자열의 비교이다

    참고로 Bool 타입의 기본값은 false임

    var isSameString: Bool  = Bool()
    
    isSameString = hello == "hello"
    print(isSameString)
    
    isSameString = sujilee == "naykim"
    print(isSameString)
    
    greeting = """
    기이이이이인 문자열
    또 기이이이인 문자열
    """
    
    print(greeting)
 
profile
sujileelea

0개의 댓글