목록분류 전체보기 (29)
써니쿠키의 IOS 개발일기
재귀함수란? 재귀함수는 함수가 자기 자신을 다시 호출하여 반복하는 함수이다. 무한 반복이 되지 않도록 명확한 탈출 조건이 필요하다. 재귀함수의 사용의 단점은 스택오버플로우가 발생할수 있다는 것이다. (자기 자신을 다시 호출할 때 그 호출 수가 너무 많아지면 발생할 수 있는 문제이다. 재귀함수의 진행방식이 호출할 때마다 스택을 쌓는 방식이라 일정량을 넘으면 스택오버플로우가 발생한다.) 스택오버플로우 극복은 '꼬리재귀함수'를 이용할 수 있다. 예제( 팩토리얼 계산 ) 1. 반복문 이용 func factorial (_ n : Int) -> Int { var answer = 1 for i in 2...n { answer = answer * i } return answer } print(factorial(4)) ..
어쩌다가 알게되었나? 본래 set타입에는 순서가 없지만 set 타입에 담긴 멤버들에게 임시적으로 순서를 부여했어야 했다..! 1. enumerated() 공식문서에서의 정의 enumerated()메서드를 사용하면 (n,x)쌍의 시퀀스로 리턴해준다 n = 0부터 시작하는 연속정수 x = 시퀀스의 요소를 나타내는 것 //예시(String) for (n, x) in "Sun".enumerated() { print("\(n): '\(x)'") } // Prints "0: 'S'" // 0부터 시작된다 // Prints "1: 'u'" // Prints "2: 'n'" 컬렉션 타입에서의 사용 array 타입 리턴되는 n값이 index와 같음을 이용 할 수 있다. 그 외 다른 컬렉션 타입(dictionaty와 ..
깃헙에서 내 로컬저장소로 클론해 올 때 깃헙에는 실제로 여러 banch가 존재하지만 클론 후 내 로컬저장소에는 main 브랜치만 넘어온다. 다른 branch를 가져오고싶다면 ? 1. 깃헙에서 code를 복사해서 clone해온다 사진속 빨간 복사버튼을 이용해 주소를 복사해 놓는다 2. 터미널을 이용해 깃클론을 한다 git clone { 복사한 주소 } // 중괄호({ })는 생략하고입력!3. git checkout을 이용해 브랜치로 옮겨가자! 클론 이후에는 main브랜치만 보인다. (실제 깃헙에는 여러 브랜치가있다) ✅ 숨겨진 브랜치를 확인해보면 같이 클론이 된것이고 checkout 을 - 이용해 원하는 브랜치로 옮겨갈 수 있다! git branch //브랜치 확인 git branch -a //숨겨진 브랜..
목표 : Array 타입을 대괄호 없이 한 줄로 출력하기 ! var numbers: Array = [1, 2, 3] // 목표 출력 형태 // 1, 2, 3 방법1. joind 메소드 사용하기 다만 joind메소드를 사용하기위해서는 String타입이여햐 해서 Int 타입을 String타입으로 변환해주기 위해 map 메서드를 활용한다. var numbers: Array = [1, 2, 3] print(numbers.map { String($0) }.joined(separator: ", ") ) //출력 // 1, 2, 3 // 클로저 축약형을 풀어서 작성 (위와같음) print(numbers.map { (number: Int) -> String in return String(number)}.joined(s..