-
[SWIFT] 저장 프로퍼티#1iOS/SWIFT 2022. 6. 17. 12:21728x90반응형
요즘 스위프트를 공부하니, 지금까지 배운 객체지향이나 절차지향과는 다른 무언가가 느껴진다. 알아보니 스위프트는 프로토콜지향 언어라고 한다. 옛날에는 ios개발을 할 때 object-c를 사용했다고 하지만 요즘 신생기업들은 대부분 swift를 선호하고 object-c에서 swift로 많이 변경한다고 한다. 물론 어플을 짜기 위해서는 swift언어 외에도 많은것을 알아야겠지만 일단 기본적인 언어를 알지 못하면 시작조차 하지 못하기 때문에 공부를 시작했다.
뭐 자바와는 다르게 프롤로그는 생략하겠다.(할말이 그닥 읎그등요ㅜ)
오늘은 처음에 항상 모두들 시작하는 개념인 변수와 상수에 개념에 대해 짧게 포스팅을 하려고 한다.
자 한번 가보자
변수와 상수(var,let)
요즘 자바 개발을 하면서 자바 언어에 매우 익숙해졌을 때 swift를 시작했던 터라 처음 입문부터가 매우 놀라웠던 개념이다. 뭐 개발자라면 초보자도 모두 알만한 변수와 상수다. 하지만 내가 알던 c언어나 자바와 선언이 매우 달랐다. 일단 코드부터 살펴보자
var a:Int = 1 //변수 let a = 1 //상수
자 보는 것 처럼 변수,상수키워드 후 변수와 자료형을 선언하고 값을 초기화 해준다.
이렇게 값을 바로 초기화해주거나 아님 나중에 초기화를 꼭 해줘야한다. 그렇지 않으면 컴파일에러가 발생한다. 그리고 선언과 동시에 값을 초기화해주면 저렇게 자료형을 생략할 수 있다. 들어간 값에 따라서 swift에서 자료형을 결정하여 컴파일한다.
let a:Int = 3 //정수 var b:Double = 3.141592 //실수 var c:Character = "C" //문자 var d:Bool = true //참과 거짓 var e:UInt = 40 //부호없는 정수 var f:Any = 100 //모든것 var g:String = "Hello, playground" //문자열
swift의 자료형을 정리해보았다. 다른언어랑 자료형은 거의 동일하다. 여기서 주의할 점이 있다. Character형태는 String과 같이 ""로 구분을 한다. 그래서 선언과 동시에 자료형을 입력하지 않을경우 자동으로 String으로 초기화가 된다.
g += " I'm QuaRAng!!" //선언 후 문자열 추가 가능 f = "sdsad" f = 12.334 //어떤 값이 들어가도 저장할 수 있음
나는 Any라는 자료형을 처음 보았는데 주석에 적힌대로 모든것이 들어갈 수 있는 자료형이다. 그래서 위와 같이 문자열을 저장한 뒤 실수를 다시 저장했음에도 오류가 없이 잘 동작이 된다.
dump(a) //print보다 많은 정보를 출력함 //출력하려는 인스턴스의 자세한 내부 콘텐츠까지 출력 print(b) print(c) print(d) print(e) print(f) print(g)
출력함수는 print를 사용하는데 개행을 따로 쓰지 않아도 다음 행으로 넘어간다. 그리고 dump라는 것이 있는데 print처럼 특정값을 출력만 하는것을 떠나 더 많은 내부 정보들까지 출력을 하게 된다. (근데 그냥 값 하나만을 출력할 때는 원하는 거창함은 없었다..)
실행화면
'iOS > SWIFT' 카테고리의 다른 글
[SWIFT] 연산프로퍼티 #6 (0) 2022.09.29 [SWIFT] 클래스/구조체 #5 (0) 2022.09.13 [SWIFT] Enum #4 (0) 2022.09.06 [SWIFT] Optional #3 (0) 2022.08.29 [SWIFT] 조건문과 반복문#2 (0) 2022.06.30