Deep_Dev
article thumbnail

 

πŸ“– λ¬Έμžμ—΄ 보간법

λ³€μˆ˜ λ˜λŠ” μƒμˆ˜ λ“±μ˜ 값을 λ¬Έμžμ—΄ 내에 λ‚˜νƒ€λ‚΄κ³  싢을 λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.

λ¬Έμžμ—΄ 내에 \(λ³€μˆ˜λ‚˜ μƒμˆ˜)의 ν˜•νƒœλ‘œ ν‘œκΈ°ν•˜λ©΄ 이λ₯Ό λ¬Έμžμ—΄λ‘œ μΉ˜ν™˜ν•΄μ„œ λ„£μŠ΅λ‹ˆλ‹€.

let name: String = "yagom"
print("My Name is \(name)")
// My name is yagom

 

 

πŸ“–  λ³€μˆ˜μ™€ μƒμˆ˜

πŸ“Œ λ³€μˆ˜

μŠ€μœ„ν”„νŠΈμ—μ„œ λ³€μˆ˜λ₯Ό μƒμ„±ν•˜λ €λ©΄ var ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

var [λ³€μˆ˜λͺ…]: [데이터 νƒ€μž…] = [κ°’]

var name: String = "yagom"
var age: Int = 100
print("μ €μ˜ 이름은 \(name)이고 λ‚˜μ΄λŠ” \(age)μ‚΄ μž…λ‹ˆλ‹€.")
// μ €μ˜ 이름은 yagom이고 λ‚˜μ΄λŠ” 100μ‚΄ μž…λ‹ˆλ‹€.

 

πŸ“Œ μƒμˆ˜

μŠ€μœ„ν”„νŠΈμ—μ„œ μƒμˆ˜λ₯Ό μƒμ„±ν•˜λ €λ©΄ let ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

let [μƒμˆ˜λͺ…]: [데이터 νƒ€μž…] = [κ°’]

 

πŸ“– λ°μ΄ν„° νƒ€μž… κΈ°λ³Έ

1. Int와 UInt : μ •μˆ˜ νƒ€μž…

2. Bool : true / false 

3. Float / Double : λΆ€λ™μ†Œμˆ˜ νƒ€μž…

* μž„μ˜μ˜ 수 λ§Œλ“€κΈ°
Int.random(in: -100...100)
UInt.random(in: 1...30)
Double.random(in: 1.5...4.3)
Float.random(in: -0.5...1.5)

 

4. Character : 문자 -> "" μ‚¬μš©

5. String : λ¬Έμžμ—΄ 

let name: String = "yagom"
// μ΄λ‹ˆμ…œλΌμ΄μ €λ₯Ό μ‚¬μš©ν•˜μ—¬ 빈 λ¬Έμžμ—΄μ„ 생성할 수 μžˆμŠ΅λ‹ˆλ‹€.
var introduce: String = String()
// append() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λ¬Έμžμ—΄μ„ 이어뢙일 수 μžˆμŠ΅λ‹ˆλ‹€.
introduce.append("제 이름은")
// + μ—°μ‚°μžλ₯Ό ν†΅ν•΄μ„œλ„ λ¬Έμžμ—΄μ„ 이어뢙일 수 μžˆμŠ΅λ‹ˆλ‹€.
introduce = introduce + " " + name + " μž…λ‹ˆλ‹€."

// name에 ν•΄λ‹Ήν•˜λŠ” 문자의 수λ₯Ό μ…€ 수 μžˆμŠ΅λ‹ˆλ‹€.
print("name의 κΈ€μž 수 : \(name.count)")
// 빈 λ¬Έμžμ—΄μΈμ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
print("introduceκ°€ λΉ„μ–΄μžˆμŠ΅λ‹ˆκΉŒ? \(introduce.isEmpty)")

// μœ λ‹ˆμ½”λ“œμ˜ 슀칼라 값을 μ‚¬μš©ν•˜λ©΄ 값에 ν•΄λ‹Ήν•˜λŠ” ν‘œν˜„μ΄ 좜λ ₯λ©λ‹ˆλ‹€ - μ–΄λ–€ λͺ¨μ–‘이 좜λ ₯λ˜λ‚˜μš”?
let unicodeScalarValue: String = "\u{2665}"

 

6.  Any,  AnyObject와 nil

πŸ’‘ Any : μŠ€μœ„ν”„νŠΈμ˜ λͺ¨λ“  데이터 νƒ€μž…μ„ μ‚¬μš©ν•  수 μžˆλ‹€. ( μ–΄λ–€ μ’…λ₯˜μ˜ 데이터 νƒ€μž…μ΄λ“ μ§€ 상관없이 ν• λ‹Ή κ°€λŠ₯ )

AnyObjectλŠ” Any보닀 쑰금 ν•œμ •λœ 의미둜 클래슀의 μΈμŠ€ν„΄μŠ€λ§Œ ν• λ‹Ήν•  수 μžˆλ‹€.

 

ν•˜μ§€λ§Œ, Any와 AnyObjectλŠ” 될 수 있으면 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 편이 μ’‹λ‹€.

νƒ€μž…μ— μ—„κ²©ν•œ μŠ€μœ„ν”„νŠΈμ˜ νŠΉμ„±μƒ Any와 AnyObject둜 μ„ μ–Έλœ λ³€μˆ˜μ˜ 값을 κ°€μ Έλ‹€ μ“°λ €λ©΄ 맀번 νƒ€μž… 확인 및 

λ³€ν™˜μ„ ν•΄μ€˜μ•Ό ν•˜λŠ” λΆˆνŽΈν•¨μ΄ μžˆμ„λΏλ”λŸ¬ 예기치 λͺ»ν•œ 였λ₯˜μ˜ μœ„ν—˜μ„ μ¦κ°€μ‹œν‚€κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.

 

 

πŸ’‘ nil : νŠΉμ •νƒ€μž…μ΄ μ•„λ‹ˆλΌ 'μ—†μŒ' 을 λ‚˜νƒ€λƒ„

( nil둜 μ„ μ–Έλœ λ³€μˆ˜λ‚˜ μƒμˆ˜μ— μ ‘κ·Όν–ˆμ„ λ•Œ 잘λͺ»λœ λ©”λͺ¨λ¦¬ μ ‘κ·ΌμœΌλ‘œ λŸ°νƒ€μž„ 였λ₯˜ λ°œμƒ )