Delay code execution In order to delay code execution, there's a certain expression DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) { } \\ Insert code at structure & class STRUCTUREstruct Human {var name: Stringvar age: Intvar gender: String func speaking() {print("Hi, my name is \(name)")}} let m = Human(name: "Mingu", age: 26, gender: "male")print(m) m.age . =======> 26m.speaking() =======> "Hi, my name is Mingu" CLASSclass Human {var name = "Mingu"var age = 26var gender = "" func speaking() {print("Hi, I'm \(name), \(age)years old, and I'm a \(gender)")}} let p.. String Editing 2 문자 바꾸기, 삭제하기 Replacing Strings var str = "Hello, Swift" if let range = str.range(of: "Swift") {str.replaceSubrange(range, with: "Friends")}print(str) ===================> "Hello, Friends" if let range = str.range(of: "Hello") {let s = str.replacingCharacters(in: range, with: "Hi")print(s) =====================> "Hi, Friends"} Removing Strings var str = "Hello, Awesome Swift!!!" let lastLetter = str.Index(bef.. String editing 1 문자 중간에 문자 넣기 var str = "Hello Swift" // Insert "," between Hello and Swiftstr.insert(",", at: str.index(str.startIndex, offsetBy: 5)) // Insert "God Damn" between Hello, and Swiftif let insertIndex = str.firstIndex(of: "S") {str.insert(contentsOf: "God Damn ", at: insertIndex)} // 여기에 있는 firstIndex(of: "S") 메소드는 처음으로 나오는 S 문자를 찾아 그 앞에 문자를 넣는것이다도시. print(str) // ==============================> "Hello, God Dam.. Substring let str = "Hello, Swift"let lowCased = str.lowercased() ------- > "hello, swift" // lowercased()는 전체 문자열을 소문자로 모두 바꿔서 새로운 문자열을 별도의 메모리 공간에 생성 Substring 이란? => 하나의 문자열 중 특정 범위에 있는 문자, 메모리 절약 가능. 원본 문자에서 메모리를 공유한다. var firstLetter = str.prefix(1)// 여기에서 firstLetter의 형식은 String.SubSequence로 저장됨.// 이것은 Substring의 type alias 형태로 둘 중 어떤것을 써도 무관합니다자하오. //하지만 Substring 을 불러올 때 문자열을 바꾼다면 새로운 문자열을 생성한다.//.. 까먹지 말자 String interpolation let year = 2020let month = 1let date = 9 let dateToday = String(format: "오늘은 %1$d년 %2$d월 %3$d일 입니다.", year, month, date)// 결과 ====> 오늘은 2020년 1월 9일 입니다. let fineDust = "개오짐"let temperature = 19.48908523 let weatherToday = String(format: "오늘의 미세먼지는 '%1$@'수준이며, 기온은 %2$.1fd도 입니다.", temperature)// 결과 =========> 오늘의 미세먼지는 '개오짐'수준이며, 기온은 19.4도 입니다. // 이제 둘을 묶어서 let today = "\(dateToday)\n\(weatherToda.. String interpolation String(format: "나는 오늘 %@를 먹고 똥을 약 %.f번을 지리고 말았다", "똥맛 카레", 72.849) 결과 -----> "나는 오늘 똥맛 카레를 먹고 똥을 약 72.849번을 지리고 말았다" ------------------------------------------------------------------------------------------------String(format: "[%.3f]", 10.93404) ---------> 소수점 3자리까지 출력. 결과 ----> "[10.934]" String(format: "[%10.4f]", 72.849) ---------> 전체 문자열을 10자리로 출력함. 소수점은 4자리까지 출력. 결과 ------> "[ 72.8490]" 7.. tuple matching let squareSize = (1200.0, 900.0) if squareSize.0 == 1200 && squareSize.1 = 900 {print ("nice square")} // By using switch switch squreSize {case (1200, 900):print ("nice square")default:break} // more usage switch squareSize {case let (w, h) where w / h == 4.0 / 3.0:print ("4:3 ratio")case (1200...1600, 900):print ("still nice")default:break} 이전 1 2 3 4 ··· 6 다음