코딩

구현 내용 결제 완료 시 결제되었습니다 얼럿 창 생성 및 장바구니 목록 삭제 및 토탈금액 변동 장바구니 비우기 할 경우 장바구니 목록 삭제 및 토탈금액 변동 장바구니 비어있을 경우 결제하기 버튼 비활성화 장바구니 하나라도 있을 경우 결제하기 버튼 활성화 및 색상 변경 배경 색상 지정 주문 내역 레이블 추가 기타 오토레이아웃 조정 Cell 내부 요소들 오토레이아웃 설정 X버튼 누를 경우 해당 셀 삭제 및 토탈가격 변화 결과
문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 1차 고민 for문과 append로 새로운 문자 배열 리턴... 보인다 보여... 1차 코드 func solution(_ s:String) -> String { var arr: [String] = [] var x = 0 for i in s { if x % 2 == 0 { arr.ap..
TableViewCell의 중요성 재사용 메커니즘의 중요성 : 재사용을 올바르게 구현하지 않으면 메모리 부족과 성능 저하가 발생할 수 있으므로, 재사용 메커니즘을 이해하고 적절히 구현해야 함. 셀의 재사용 식별자의 중요성 : 셀의 재사용은 식별자를 통해 이루어지며, 고유한 식별자를 사용함으로써 셀의 일관된 재사용을 보장 셀의 생명 주기 이해: 특히 셀이 표시되기 전과 표시된 후에 필요한 초기화 및 정리 작업을 올바르게 처리하는 것이 중요 구조체와 클래스 구조체(struct): 값 타입(value type)으로, 데이터와 메서드를 포함할 수 있는 논리적인 캡슐화 단위. 구조체는 값 복사에 의해 전달됨. 클래스(class): 참조 타입(reference type)으로, 데이터와 메서드를 포함하는 객체. 클래..
map 시퀀스의 요소에 주어진 클로저를 매핑한 결과가 담긴 배열을 반환 compactMap 시퀀스의 각 요소에 변형을 준 뒤, nil이 아닌 결과가 담긴 배열을 반환 둘의 차이점은? "compactMap은 nil이 아닌 값들만 선택적으로 반환한다" 예시 let test: [String] = ["1", "/2/", "three", "5", "1s"] 해당 배열에서 Int로 변형할 수 있는 요소들만 가져오려고 할 때, Int값의 리턴 타입은 Int? 이다. 옵셔널인지 확인해보자. let stringOfInt = "456" print(Int(stringOfInt)) // Optional(456) let stringOfDouble = "0.01" print(Int(stringOfDouble)) // nil 이제..
문제 설명 0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다. x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다. 예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해주세요. 제한 사항 s의 길이는 1 이상 150,000 이하입니다. s에는 '1'이 최소 하나 이상 포함되어 있습니다. 1차 고..
문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 사항 두 수는 1이상 1000000이하의 자연수입니다. 1차 고민 for문 하나에 if로 % == 0 조건걸면 끝나는거아닌가요 1차 코드 func solution(_ n:Int, _ m:Int) -> [Int] { var num = 1 for i in 1...min(n, m) { if n % i == 0 && m % i == 0 { num = i } } return [num, (n *..
학습 목표 Table View 사용에 있어서 익숙해지고 원하는 내용을 마음대로 넣어보자 Storyboard UIImageView를 사용하여 Cell에 담으면 이미지도 넣을 수 있다는 사실을 알았다. 제목과 세부사항에 대해서 넣을거라 label의 구속은 서로 크기가 다르게 잡힌 상태이다. 그리고 사용될 이미지는 Assets에 미리 담아두고 사용할 예정. Movie.swift 제목과 설명은 있지만 이미지가 없을 경우를 고려하여 이미지만 옵셔널로 담았다. MovieCell.swift struct에 담긴 내용과 굉장히 유사하지만 이건 셀에 담길 내용을 위한 Outlet이다. ViewController.swift setup()함수로 빼는 것이 원래 내 스타일인데 오늘은 그냥 안빼고 안에 넣어봤다. 그냥 그러고 싶..
components(separatedBy:) let str = "apple,orange,banana" let fruits = str.components(separatedBy: ",") print(fruits) // ["apple", "orange", "banana"] 문자열을 지정된 구분자로 나누어 배열로 반환 split(separator:) let str = "apple,orange,banana" let fruits = str.split(separator: ",") print(fruits) // ["apple", "orange", "banana"] 구분자가 포함된 문자열의 부분을 반환 컴포넌츠와 스플릿의 비교 // 보통은 빈 문자열의 경우를 많이 가르는데 가독성을 위해 ,로 표기 let str = "a..
리마스터 결심 계기 라이브러리를 많이 가져다 쓰고, 튜터님들께 도움을 받아 만든 코드라서 정상적으로 작동하지만 왜 내가 이러한 이유로 코드를 가져다 썼는지, 전체적인 userInput의 흐름이 어떻게 흘러가고 어떻게 처리되어 화면에 나타나는지 감을 전혀 못잡고 있었다. 전형적으로 어쩌다 얻어걸린 코더의 느낌이 나서 이미 정답지는 있으니 다시 처음부터 코딩해야겠다고 생각했다. 기존의 코드는 비교를 위해 그대로 둔 채 새 프로젝트를 생성하여 빌드까지 올리기로 했다. 오늘의 진척 1 기존 코드에서 let todo에 배열의 indexPath.row를 담아서 todo. 으로 편하게 작성하려고 두었던 상수인데 centerLine에 관련된 함수를 추가하면서 let todo의 존재를 망각했었나보다. todo를 사용했다..
sngsp
'코딩' 태그의 글 목록