Kyuu
규규 개발노트 :)
Kyuu
전체 방문자
오늘
어제
  • 분류 전체보기 (19)
    • Swift (5)
      • 문법 정리 (5)
    • iOS (6)
      • iOS 개발 (3)
      • iOS 프로젝트 (1)
      • iOS꿀팁 (2)
    • Git (1)
    • 공부 (1)
    • 휴식 (6)
      • 영화 (2)
      • 맛집 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • MAC
  • 맥북셋팅
  • 앱개발
  • swift키보드
  • 의정부고기집
  • ios
  • 영화추천
  • 개발자
  • ios개발자
  • Swift
  • 앱개발자
  • iOSDeveloper
  • 새프로젝트생성
  • XCode
  • 언래핑
  • 맥북소리
  • swfitUI
  • 개발자사이트
  • swfit
  • 스펜서후기
  • 영화리뷰
  • Xcode 단축키
  • 명가생고기정육식당
  • 서울맛집
  • 익선동샤브샤브
  • AnyObject
  • 맥북사운드
  • 온천집
  • 다이애나스펜서
  • 다이애나왕세자비

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Kyuu

규규 개발노트 :)

Swift : 기초 문법 [ Data Type : 데이터 타입 ] (2)
Swift/문법 정리

Swift : 기초 문법 [ Data Type : 데이터 타입 ] (2)

2022. 3. 15. 01:11
반응형


Swift의 기본 데이터 타입 부분입니다. 본 게시글은 야곰 님 블로그를 참고하여 작성되었습니다.

데이터 타입 기본

스위프트에서는 함수 , 메서드, 인스턴스 이름은 첫 글자를 소문자로 사용하는 소문자 카멜케이스를 (Lower Camel Case) 사용합니다.
클래스, 구조체, 익스텐션, 프로토콜, 열거형 이름은 타입의 이름이기 때문에 첫 글자를 대문자로 사용하는
대문자 카멜케이스(Upper Camel Case)를 사용합니다.

대소문자를 구별합니다 Let , let를 다르게 인식합니다.

1. Int와 UInt

Int는 +,- 를 포함한 정수를 말하고 UInt는 -를 포함하지 않는 양의 정수를 표현합니다.
var someInt: Int = -10
someInt = 100

var someUInt:UInt = 10
someUInt = 1

Int.random(in: -100...100) // 범위 내의 임의의 숫자 만들기

someInt = someUInt  // 에러 스위프트에서 Int와 UInt는 다른 타입 값을 할당할 수 없다

 

2. Bool


Bool은 불리언 타입입니다. 불리언 타입은 참(true) 또는 거짓(false)만 값으로 가집니다.

var boolean: Bool = true
boolean.toggle() // false -> ture

let MyNameIsKyuu: Bool = true
let MyNameIsJeng: Bool = false

print("제 이름은 규 가 맞습니까? : \(MyNameIsKyuu)") /// true
print("당신의 이름은 정 입니까? : \(MyNameIsJeng)")// false

 

3. Float, Double

Float 타입은 64비트 환경에서 6자리의 숫자까지만 표현이 가능합니다
var someFloat: Float = 1234567890.1

someFloat = 1.23456 // Float이 수용할 수 있는 범위의 수로 변경

 

 64비트의 부동소수형 표현을 하는 Double //64비트 환경에서 Double은 최소 15자리의 십진수를 표현할 수 있습니다.
 
 var DoubleValue: Double = 3.14
 var someFloat:   Float = 3.14
 
 DoubleValue = 3 //  Float과 마찬가지로 소수점을 기재하지않아도 할당 가능
 DoubleValue = someFloat // 오류!! 다른 타입이므로 불가 .

 

4. Character

말 그대로 문자 입니다. 한 글자(문자)를 표현하기 위한 타입입니다.
문자를 표현하기 위해서는 값의 앞뒤 에 큰따옴표를 사용하여 표현합니다.

let alphabetA: Character = "A"
print(alphabetA)

let iloveyou: Character = "♡"  //😍 
// Character 값에 유니코드 문자를 사용할 수 있습니다.
print(iloveyou)

let 한글변수이름: Character = "ᄀ"
// 한글도 유니코드 문자에 속해 있으므로 스위프트 코드에 변수 이름으로 사용할 수 있습니다.

 

5. String

Stiring은 문자의 나열, 즉 문자열입니다.

String , Character 둘다 마찬가지로 유니코드9 를 사용하고 값의 앞 뒤로
큰 따옴표("") 를 사용합니다.


let name: String = "Kyuu" // 상수로 선언된 문자열은 변경이 불가능합니다.

// 이니셜라이저를 사용하여 빈 문자열을 생성할 수 있습니다.
// var 키워드를 사용하여 변수를 생성하였으므로 문자열의 수정 및 변경이 가능합니다.
var introduce: String = String()

introduce.append("제 이름은")
// append() 메서드를 사용하여 문자열을 이어붙일 수 있습니다.

introduce = introduce + " " + name + 입니다.
// + 연산자를 통해서도 문자열을 이어붙일 수 있습니다.


print(introduce) // 제 이름은 Kyuu 입니다. 

var someString: String = "호호호호호! 😄"
someString = someString + "하하하하하"	// 연산자를 통해 문자열을 합칠 수 있습니다.
var someCharacter: Character = "😆"
someString = someCharacter	// 오류 ! 다른 타입 할당 불가.

 

6. Any,AnyObject, nil

  • Any 는 스위프트의 모든 데이터 타입을 사용할 수 있다는 뜻입니다
  • AnyObject 는 Any 보다 한정된 의미로 class의 인스턴스만 할당이 가능합니다.
  • nil 은 특정 타입이 아닌 '비어있다' 라는 뜻을 말하는 키워드다

// nil 선택 사항이 아닌 상수 및 변수와 함께 사용할 수 없습니다 . 코드의 상수나 변수가 특정 조건에서 값이 없는 상태에서 작동해야 하는 경우 항상 적절한 유형의 선택적 값으로 선언합니다.

var someAny: Any = "kyuu"

someAny = "😆"

someAny = 3.1451

someAny = "규규 개발노트"


let someDouble: Double = 3.141592
someDouble = someAny	// 에러 발생! 타입이 다르므로 할당할 수 없습니다.
someAny = someDouble	// Any 타입이므로 할당할 수 있습니다.
class SomeClass {}

var someAnyObject: AnyObject = SomeClass()

// AnyObject는 클래스의 인스턴스만 수용 가능하기 때문에 클래스의 인스턴스가 아니면 할당할 수 없습니다.

someAnyObject = 123.12	// 에러 발생!

Swift는 타입에 매우 엄격한 언어이므로 계속해서 사용하는 것은 비추천
런타임 시점에서 타입이 결정나기 때문에 오류가 만약나면 런타임오류로 빠짐
필요한 경우가 아닌경우는 될 수 있는 한 명시하는것이좋다.

끝까지 읽어주셔서 감사합니다!

틀린 부분이 있으면 꼭 코멘트를 남겨주시길 바랍니다.

반응형

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

SwiftUI에서 속성 래퍼(@State, @Binding, @ObservedObject, @EnvironmentObject) 이해하기  (3) 2023.05.31
swift: 기초문법 ( Optional ) 옵셔널 Unwrapping 개념 정리 (4)  (0) 2022.04.27
Swift: 기초문법 ( if / switch ) , ( for / while ) 조건문과 반복문 제어문(3)  (1) 2022.04.27
Swift : 기초 문법 [ 변수와 상수] (1)  (0) 2022.03.13
    'Swift/문법 정리' 카테고리의 다른 글
    • SwiftUI에서 속성 래퍼(@State, @Binding, @ObservedObject, @EnvironmentObject) 이해하기
    • swift: 기초문법 ( Optional ) 옵셔널 Unwrapping 개념 정리 (4)
    • Swift: 기초문법 ( if / switch ) , ( for / while ) 조건문과 반복문 제어문(3)
    • Swift : 기초 문법 [ 변수와 상수] (1)
    Kyuu
    Kyuu

    티스토리툴바