분류 전체보기 141

swift - Array & Dictionary (basic)

array와 관련된 내용 정리 기본적으로 선언하는 방법은 아래와 같다. var myArray:[String] = ["Dog", "Cat", "Bird"] 또는 자료형을 생략해도 된다. var myArray = ["Dog","Cat","Bird"] EMPTY ARRAY 만드는 방법 var myArray:[String] = [] 또는 var myArray = [String]() 와 같이 코드를 입력해주면 된다. ADD ITEMS myArray.insert("Fish", at: 0) --> 원하는 인덱스에 삽입 myArray += ["Fish", "Frog"] myArray.append("Bear") --> 인덱스 끝에 추가됨 REMOVE ITEMS myArray.remove(at: 2) --> 해당 인덱스의..

iOS/swift 2021.08.26

swift - Optional (basic)

Optional : optional data type allows "nil" to be a value for the variable or constant. 먼저 네 가지 변수의 선언을 비교해볼 것이다. var a:Int = 1 var b:Int? = nil var c:Int? *** 이처럼 값을 따로 할당하지 않는 경우, 기본적으로 nil값이 할당됨 // c can store an int or nil, but it is wrapped. var d:Int! // d can store an int or nil, but it is already unwrapped. 위와 같이 data type 뒤에 ?를 붙여주면 optional data type이 되며, optional data type인 경우 변수나 상수의 ..

iOS/swift 2021.08.25

20210814~20210816 백준 문제풀이 swift (사칙연산 곱셈, if문)

사칙연산 곱셈 (2588), if문 (1330, 9498, 2753, 14681, 2884) 문제풀이 먼저 곱셈 문제에서, 처음에 런타임 오류가 났는데 readLine으로 입력받을 때, 두 줄에 거쳐 입력을 받았는데 어떻게 두 줄을 입력받는지 몰라서였다. 복잡하게 생각할 것 없이 readLine을 두 번 사용하면 되는 문제였다. let num1 = Int(readLine()!)! let input2 = readLine()! let num2 = Int(input2)! let num2Arr = input2.map {Int(String($0))!} let num3 = num1 * num2Arr[2] let num4 = num1 * num2Arr[1] let num5 = num1 * num2Arr[0] let ..

Today I Learned 2021.08.17

20210812 split vs components 정리

https://dmsitter.tistory.com/130 swift - Split vs Components (문자열을 특정 separator로 나눠서 배열에 리턴) 먼저 관련 공식문서의 주소는 아래와 같다. https://developer.apple.com/documentation/dispatch/dispatchdata/1780541-split/ Split 공식문서 https://developer.apple.com/documentation/foundation/nsstring/1.. dmsitter.tistory.com 분명히 오늘 계획이 더 많았는데.. 생각보다 하나 정리하는 데 시간이 많이 걸린다..

Today I Learned 2021.08.12

swift - Split vs Components (문자열을 특정 separator로 나눠서 배열에 리턴)

먼저 관련 공식문서의 주소는 아래와 같다. https://developer.apple.com/documentation/dispatch/dispatchdata/1780541-split/ Split 공식문서 https://developer.apple.com/documentation/foundation/nsstring/1410120-components/ Components 공식문서 components(separatedBy:) 1가지 매개변수(parameter)가 들어갈 수 있다. separatedBy: 나누는 단위가 되는 요소 아래에 있는 Split 부분에서 자세히 정리할 것이다. components function을 사용하기 위해서는 Foundation이라는 프레임워크가 필요하기 때문에, import Fou..

iOS/swift 2021.08.12

20210811 백준 문제풀이 (입출력과 사칙연산2)

9번 문제 처음에는 8번문제에서 했던 것처럼 나누기와, 나머지를 구하는 부분에서 Double 자료형을 사용했었는데, 틀렸다고 나왔다.. 문제를 다시 한 번 살펴보니, A/B = A를 B로 나눈 값 이 정확하게 나와야 하는 것이 아니라 몫을 구해야 하는 문제였기 때문에 Int type을 사용해서 몫을 구하고, 나머지도 구하면 되는 단순한 문제였다. import Foundation let arr = readLine()! let arrs = arr.components(separatedBy : " ") let a = Int(arrs[0])! let b = Int(arrs[1])! let c = Double(arrs[0])! let d = Double(arrs[1])! print(a+b) print(a-b) pr..

Today I Learned 2021.08.12

20210810 - 백준 문제풀이 (입출력과 사칙연산1)

단계별 문제풀이 시작 입출력과 사칙연산 1~8을 풀어보면서 정리한 내용들 출력 시 \(back slash)는 바로 뒤에 오는 문자와 더불어 escape sequence를 만들 수 있기 때문에, \을 단독으로 사용하면 에러가 발생한다. 가령, print("\ /\")의 경우 "\\ /\\" 으로 입력해주어야 한다. 백슬래시 외에도 명령어처럼(?) 사용되는 문자기호의 경우 앞에 4번 문제인 개 그림..을 출력할 때 나오는 "의 경우를 예를 들어보면, 프린트함수 내부에서 사용되는 문자이기 때문에 단독으로 사용하지 않고 \를 앞에 붙여줘야 정상적으로 출력되는 것을 확인할 수 있었다. print("( 0 )"""\") 대신 print("( 0 )\"\"\"\\") 이라고 작성해줘야 정상적으로 출력된다. 5번 문제..

Today I Learned 2021.08.11

20210725 BMI calculator project -4

지난번에 SecondViewController.swift를 만들고 그 안에 기본적인 틀을 만들었다. 오늘은 storyboard를 사용하지 않고 코드를 사용해서 두 번째 화면을 만들고, calculate 버튼을 눌렀을 때 BMI value가 두 번째 화면에 나타나도록 할 것이다. 먼저 코드만 작성해서 label을 하나 만들 것이다. viewDidLoad() 안에 label을 하나 만들고 UILabel class에서 UILabel object를 초기화한다. let으로 만들었지만 class이기 때문에 property나 method를 수정할 수 있다. 예를 들어 label의 text를 위처럼 "Hello"가 되도록 할 수 있다. ( .을 통해 property나 method에 접근할 수 있다 --- label.t..

Today I Learned 2021.07.26

20210722 BMI calculator project-3

https://dmsitter.tistory.com/122 Swift - Class & Inheritance 클래스는 구조체와 마찬가지로 청사진을 정의하는 하나의 방법이다. property와 method들을 설계할 수 있도록 하고, init()을 통해 어플을 실행했을 때 클래스를 실제 객체로 초기화할 수 있다. 클래 dmsitter.tistory.com https://dmsitter.tistory.com/123 swift - Struct vs Class swift에서 struct와 class의 차이점에 대해 정리한다. 가장 큰 차이점은 superclass로부터 상속받을 수 있다는 점이 있지만, 그것과는 별개로 superclass로부터 상속받지 않는 기본 class와 struct의 차이점을 dmsitter..

Today I Learned 2021.07.23