[iOS / Swift] 문자와 문자열

2024. 12. 3. 18:44·Swift/Swift 문법 정리
import UIKit

// Have a nice day // 이것은 Swift에서는 문자열로 판단하지 않음.
"Have a nice day" // 큰따옴표로 해야 문자열로 판단함.
"123" // 이것도 문자는 숫자로 이루어져 있지만 큰따옴표로 되어있으므로 문자열로 판단함.

// let onChar = "1" // 이렇게 작성하면 문자로 판단.
let onChar: Character = "1"

// let doubleChar: Character = "12" // 이것은 두개의 문자가 들어가서 문자로 저장할 수 없는 것임.

// 즉, 문자 : 1개의 문자, 문자열 : 2개 이상의 문자의 집합체

let emptyChar : Character = " " // 빈공간으로 하고싶으면 하나의 스페이스를 둬야함.


// let str : String = 123 ( 큰따옴표가 없어서 안됨 )
// let num : Int = 12.34 ( 실수는 Double이라서 안됨 )
let double : Double = 12 // 뒤에 소수점이 있기때문에 가능 12.00

//let a = 7
//let b : Int8 = a (메모리 공간의 크기가 달라서 안됨.)

let a = 12
let b = 34.56

//let result = a + b // a와 b의 타입이 달라서 계산이 안됨
//print(result)

let c = 12
let d = 9

let result1 = c + d // 타입이 같으니까 계산이 가능
print(result1)

let rate : Double = 1.94
let amt = 10000000
//let result2 = rate * amt  타입이 달라서 계산이 안됨. 타입을 맞춰야함 계산기로 생각하면 소수점을 버리면 안되니까 Double에 맞춰야함 => 형변환
let result2 = rate * Double(amt)

print(result2)

let e = 123
let f = Int8(e)
Int8.max

//let g = Int.max
//let h = Int8(g) // Swift/Integers.swift:3687: Fatal error: Not enough bits to represent the passed value = 일부 데이터가 날아가도 일부 데이터를 저장할 수 있다면 문제는 없음.

let str = "123"
let num12 = Int(str) // str은 문자열 즉 String이지만, num12는 Int(str)로 형변환을 했기 떄문에 num12의 str은 Int형임

let str1 = "Swift"
let num23 = Int(str1) // 여기서는 우측에 보면 nil이라고 나옴. 123같은 경우는 Int형이 될 수 있지만, Swift 같은경우는 숫자가 아니기때문에 Int형으로 바꿀 수 없어서 nil이라는 값이 나온 것.


// 타입 얼리어스 (자주사용하진 않지만 사용하면 코드의 가독성이 좋아지긴함)
typealias Coordinate = Double

let lat : Coordinate = 12.34
let lon : Coordinate = 56.78

문자(character) : 단 하나의 문자 -> "a", "ㄱ" 등등

문자열(String) : 문자들의 집합체 -> "apple", "바보" 등등

 

문자 혹은 문자열로 판단하기 위해서는 "" 안에 작성해야만 판단가능. 만약 123이라는 것을 ""안에 넣지 않으면 정수(Int) 타입으로 판단함.

 

형변환

위의 예시를 보면 let str = "123"을 Int형으로 바꿈

 

하지만, 아래의 예시를 보면 "Swift"는 정수로 판단할 수 없는 문자이기 때문에 nil값이 나옴.

DataType#2_String.playground.zip
0.01MB

 

'Swift > Swift 문법 정리' 카테고리의 다른 글

[iOS / Swift] Optional 개념과 Unwrapping 정리  (0) 2024.12.19
[iOS / Swift] 연산자  (1) 2024.12.04
[iOS / Swift] 숫자와 참거짓  (0) 2024.12.03
[iOS / Swift] 변수와 상수  (2) 2024.11.28
[iOS / Swift] 객체지향 프로그래밍(OOP), 함수형 프로그래밍 (FP)  (2) 2024.11.06
'Swift/Swift 문법 정리' 카테고리의 다른 글
  • [iOS / Swift] Optional 개념과 Unwrapping 정리
  • [iOS / Swift] 연산자
  • [iOS / Swift] 숫자와 참거짓
  • [iOS / Swift] 변수와 상수
이도서
이도서
  • 이도서
    도서의 코딩노트
    이도서
  • 전체
    오늘
    어제
    • 분류 전체보기 (209)
      • Today I Learned (79)
        • 2024 (78)
      • Swift (25)
        • Swift 문법 정리 (19)
        • RxSwift (5)
      • Swift Study (12)
        • Playground (2)
        • Storyboard (9)
        • UIKit (1)
      • Git (3)
      • 코딩테스트 (60)
      • Dart 언어 (16)
      • Flutter (11)
        • Flutter Study (11)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • 개발 공부 공유 링크
  • 인기 글

  • 태그

    코딩테스트Level.1
    Xcode
    함수
    Til
    DART
    Playground
    코딩 테스트
    객체지향
    iOS앱개발
    ios앱개발자
    storyboard
    ios
    Swift
    계산기만들기
    Flutter
    코딩테스트 level.1
    widget
    구조체
    내일배움캠프
    코딩테스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
이도서
[iOS / Swift] 문자와 문자열
상단으로

티스토리툴바