๐ŸŽ iOS/Swift

    [Swift] ๊ธธ์ด๊ฐ€ ์ •ํ•ด์ง„ ๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค๊ณ  0์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•˜๊ธฐ

    Array: repeating repeating์ด๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด์„œ ์›ํ•˜๋Š” ๊ฐœ์ˆ˜๋งŒํผ ๋ฐ˜๋ณตํ•˜์—ฌ ํŠน์ • ๊ฐ’์„ array ์•ˆ์— ๋„ฃ์–ด์ค„ ์ˆ˜ ์žˆ๋‹ค. - ํŠน์ • ์œ„์น˜์— ๊ฐ’์ด ์—†์œผ๋ฉด ์•ฑ์ด crash ๋‚  ๊ฒฝ์šฐ, ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์„ ์ด์šฉํ•˜์—ฌ ํŠน์ • ์ธ๋ฑ์Šค๊นŒ์ง€๋Š” ๊ฐ’์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ํ™•์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค. var myArray = [Int](repeating: 0, count: 100)

    [Swift] Class์™€ Inheritance(์ƒ์†)

    Inheritance A parent class = 'Superclass' A child class = 'Subclass' ์Šˆํผ ํด๋ž˜์Šค ์—†์ด ์ •์˜ํ•œ ํด๋ž˜์Šค = 'Base class' class Bicycle: Vehicle { var hasBasket = false } let bicycle = Bicycle() bicycle.hasBasket = true Override property์™€ method๋Š” ์˜ค๋ฒ„๋ผ์ด๋“œ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์›๋ž˜ ์žˆ๋˜ ์†์„ฑ์— ์˜ฌ๋ผํƒ€์„œ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Œ. ํ•จ์ˆ˜ ์ด๋ฆ„ ์˜†์— override ํ‚ค์›Œ๋“œ๋ฅผ ๋ถ™์ด๋ฉด ์‚ฌ์šฉ ๊ฐ€๋Šฅ. class Train: Vehicle{ override func makeNoice(){ print("Choo Choo!") } } Reference class Person{ le..

    [Swift] Structure

    โ€ป convention: ๊ตฌ์กฐ์ฒด์˜ ์ด๋ฆ„์€ ๋Œ€๋ฌธ์ž, ๊ทธ ์•ˆ์— property๋‚˜ method๋“ค์€ ์†Œ๋ฌธ์ž, ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” ์†Œ๋ฌธ์ž instance ์ธ์Šคํ„ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๋ ค๋ฉด ์ดˆ๊ธฐํ™”๋ฅผ ํ•ด์•ผํ•˜๊ณ  ๊ฐ๊ฐ์˜ ์ธ์Šคํ„ด์Šค๋Š” structure์˜ ๋ชจ๋“  ํ”„๋กœํผํ‹ฐ์™€ ๊ธฐ๋Šฅ๋“ค์„ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค. struct User { static var currentUser: User = User(userName: "Default", email: "Default", age: 0) var userName: String var email: String var age: Int static func logIn(user: User){ currentUser = user } } let me = User(userName: "Harry", email: "djk..

    [Swift] ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ์„œ์˜ ํ•จ์ˆ˜

    Swift๋Š” ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ํฌํ•จํ•˜๋Š” ๋‹ค์ค‘ ํŒจ๋Ÿฌ๋‹ค์ž„ ์–ธ์–ด ์Šค์œ„ํ”„ํŠธ์˜ ํ•จ์ˆ˜๋Š” ์ผ๊ธ‰๊ฐ์ฒด์ด๋ฏ€๋กœ ๋ณ€์ˆ˜, ์ƒ์ˆ˜ ๋“ฑ์— ์ €์žฅ์ด ๊ฐ€๋Šฅํ•˜๊ณ  ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ํƒ€์ž…์ด ๋‹ค๋ฅธ ํ•จ์ˆ˜๋Š” ํ• ๋‹นํ•  ์ˆ˜ ์—†๋‹ค. (๋งค๊ฐœ๋ณ€์ˆ˜ 1ํƒ€์ž…, ๋งค๊ฐœ๋ณ€์ˆ˜2ํƒ€์ž… ...) -> ๋ฐ˜ํ™˜ํƒ€์ž… func greeting(to friend: String, from me: String){ print("Hello \(friend)! I'm \(me)") } var someFunction: (String, String) -> Void = greeting(to:from:) someFunction("a","finit") // someFunction ์ž์ฒด๊ฐ€ ํ•จ์ˆ˜์ด๊ธฐ์— ํ˜ธ์ถœ ๊ฐ€๋Šฅ // Hello a! I'm finit. someFunction = ..

    [Swift] ๋งค๊ฐœ๋ณ€์ˆ˜/์ „๋‹ฌ์ธ์ž ๋ ˆ์ด๋ธ”/๊ฐ€๋ณ€ ๋งค๊ฐœ๋ณ€์ˆ˜

    ๊ธฐ๋ณธ ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ธฐ๋ณธ๊ฐ’์„ ๊ฐ–๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ชฉ๋ก ์ค‘์— ๋’ค์ชฝ์— ์œ„์น˜ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. func greeting(friend: String, me: String: "Finit"){ print("Hello \(friend)! I'm \(me)") } ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ธฐ๋ณธ๊ฐ’์„ ๊ฐ–๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค. greeting(friend: "finit") ์ „๋‹ฌ์ธ์ž ๋ ˆ์ด๋ธ” ์ „๋‹ฌ์ธ์ž ๋ ˆ์ด๋ธ”์€ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์—ญํ• ์„ ์ข€ ๋” ๋ช…ํ™•ํ•˜๊ฒŒ ํ•˜๊ฑฐ๋‚˜ ํ•จ์ˆ˜ ์‚ฌ์šฉ์ž์˜ ์ž…์žฅ์—์„œ ํ‘œํ˜„ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์ „๋‹ฌ์ธ์ž๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•œ๋‹ค. func greeting(to friend: String, from me: String){ print("Hello \(friend)! I'm \(me).") } ํ•จ์ˆ˜..

    [Swift] ๊ธฐ๋ณธ ํ•จ์ˆ˜ function

    // ๋ฐ˜ํ™˜๊ฐ’ O func sum(a: Int, b: Int) -> Int { return a+b } // ๋ฐ˜ํ™˜๊ฐ’ X func printMyName(name: String) -> Void{ print(name) } // ๋งค๊ฐœ๋ณ€์ˆ˜ X func maximumIntegerValue() -> Int{ return Int.max } // ๋ฐ˜ํ™˜๊ฐ’ X ๋งค๊ฐœ๋ณ€์ˆ˜ X func hello() -> Void{ print("hello") } // ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ sum(a: 3, b:5) //8

    [Swift] ์ปฌ๋ ‰์…˜ ํƒ€์ž… | Array, Dictionary, Set

    - Array: ์ˆœ์„œ๊ฐ€ ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ ์ปฌ๋ ‰์…˜ var integers: Array = Array() integers.append(1) integers.append(100) //integers.append(101.1) // ์˜ค๋ฅ˜ integers.contains(100) // true integers.remove(at:0) // 0๋ฒˆ ์ธ๋ฑ์Šค์˜ ๊ฐ’ ์‚ญ์ œ integers.removeLast() integers.removeAll() integers.count // Array์™€ [Double]์€ ๋™์ผํ•œ ํ‘œํ˜„ var doubles: Array = [Double]() var strings: [String] = [String]() var characters: [Character] = [] // let์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ถˆ๋ณ€ Arr..