반응형

Swift 연산자의 종류

Swift 2018. 2. 14. 12:20
반응형

Swift 연산자의 종류


할당 연산자


연산자

부호

설명

할당(대입) 연산자

A = B

A B 값을 할당합니다. 서로 다른 데이터 타입이라면 오류가 발생합니다.


산술 연산자


연산자

부호

설명

더하기 연산자

A + B

A B 값을 더한 값을 반환합니다.

빼기 연산자

A - B

A에서 B 값을 반환합니다.

곱하기 연산자

A * B

A B 곱한 값을 반환합니다.

나누기 연산자

A / B

A B 나눈 값을 반환합니다.

나머지 연산자

A % B

A B 나눈 나머지를 반환합니다.



비교 연산자


연산자

부호

설명

값이 같다

A == B

A B 같은 값인지 비교하여 불리언 값을 반환합니다.

값이 크거나 같다

A >= B

A B보다 크거나 같은 값인지 비교하여 불리언 값을 반환합니다.

값이 작거나 같다

A <= B

A B보다 작거나 같은 값인지 비교하여 불리언 값을 반환합니다.

값이 크다

A > B

A B 값인지 비교하여 불리언 값을 반환합니다.

값이 작다

A < B

A B보다 작은 값인지 비교하여 불리언 값을 반환합니다.

값이 같지 않다

A != B

A B 다른 값인지 비교하여 불리언 값을 반환합니다.

참조가 같다

A === B

A B 참조(레퍼런스) 타입일 A B 같은 인스턴스를 가리키고 있는지 비교하여 불리언 값을 반환합니다.

참조가 같지 않다

A !== B

A B 참조(레퍼런스)타입일 A B 같지 않은 인스턴스를 가리키고 있는지 비교하여 불리언 값을 반환합니다.

패턴 매치

A ~= B

A B 패턴이 매치되는지 확인하여 불리언 값을 반환합니다.



삼항 조건 연산자


연산자

부호

설명

삼항 조건 연산자

Question ? A : B

Question(불리언 ) 참이면 A, 거짓이면 B 반환합니다.



범위 연산자


연산자

부호

설명

폐쇄 범위 연산자

A…B

A부터 B까지의 수를 묶어 범위를 표현합니다. A B 포함합니다.

빈폐쇄 범위 연산자

A..<B

A부터 B 미만까지의 수를 묶어 범위를 표헌합니다. A 포함하고 B 포함하지 않습니다.



부울 연산자


연산자

표현

설명

NOT(부정) 부울 연산자

!B

B(불리언 ) , 거짓을 반전합니다.

AND 부울 연산자

A && B

A B 불리언 AND 논리연산을 수행합니다.

OR 부울 연산자

A || B

A B 불리언 OR 논리연산을 수행합니다.



비트 연산자


연산자

표현

설명

NOT(부정) 비트 연산자

~A

A 비트를 반전한 결과를 반환합니다.

AND 비트 연산자

A & B

A B 비트 AND 논리연산을 수행합니다.

OR 비트 연산자

A | B

 A B 비트 OR 논리연산을 수행합니다.

XOR 비트 연산자

A ^ B

A B 비트 XOR 논리연산을 수행합니다.

비트 이동 연사자(쉬프트 연산자)

A >> B

A << B

A 비트를 B만큼 비트를 쉬프트(이동)합니다.



복합 할당 연산자


표현

설명

같은 표현

A += B

A B 합을 A 할당합니다.

A = A + B

A -= B

A B 차를 A 할당합니다.

A = A - B

A *= B

A B 곱을 A 할당합니다.

A = A * B

A /= B

A B 나눈 값을 A 할당합니다.

A = A /B

A %= B

A B 나눈 나머지를 A 할당합니다.

A = A % B

A <<= N

A N만큼 왼쪽 비트 쉬프트한 값을 A 할당합니다.

A = A << N

A >>= N

A N만큼 오른쪽 비트 쉬프트한 값을 A 할당합니다.

A = A >> N

A &= B

A B 비트 AND 연산 결과를 A 할당합니다.

A = A & B

A |= B

A B 비트 OR 연산 결과를 A 할당합니다.

A = A | B

A ^= B

A B 비트 XOR 연산 결과를 A 할당합니다.

A = A ^ B



오버플로 연산자


연산자

부호

설명

오버플로 더하기 연산

&+

오버플로에 대비한 덧셈 연산을 합니다.

오버플로 빼기 연산

&-

오버플로에 대비한 뺄셈 연산을 합니다.

오버플로 곱하기 연산

&*

오버플로에 대비한 곱셈 연산을 합니다.



기타 연산자

연산자

부호

설명

nil 병합 연산자

A ?? B

A nil 아니면 A 반환하고, A nil이면 B 반환합니다.

부호변경 연산자

-A

A() 부호를 변경합니다.

옵셔널 갈제 추출연산자

O!

O(옵셔널 개체) 값을 강제로 추출합니다.

옵셔널 연산자

V?

V(옵셔널 ) 안전하게 추출하거나, V(데이터 타입) 옵셔널임을 표현합니다.



반응형
Posted by 컴스터
,
반응형

타입 자체에 호출이 가능한 메서드를 타입 메서드라고 한다.

타입 메서드에는 static 메서드와 class 메서드가 있다.

static 메서드는 상속 후 메서드 재정의를 할 수 없고 class 메서드는 상속 후 재정의를 할 수 있다.

다음을 보고 확인해 봅시다.

위에서 보는 바와 같이 static 메서드를 오버라이드 했을때 오류 메세지가 뜹니다.

오류 메세지 뜨는 부분을 주석처리 하고 class 메서드를 오버라이드 하면 오류 메세지 없이 잘 실행 됩니다.

 


반응형
Posted by 컴스터
,

Swift 특수문자

Swift 2018. 1. 12. 16:13
반응형

특수문자는 제어문자라고도 합니다.

스위프트에는 문자열 내에서 일정 기능을 하는 특수문자가 있습니다.

특수문자는 모두 백슬래시에 특정한 문자를 조합하여 사용합니다.

가장 많이 쓰는 특수문자는 다음과 같습니다.

 특수문자

설명 

 \n

줄바꿈 문자 

\\ 

문자열 내에서 백슬래시를 표현하고자 할 때 사용

\"

문자열 내에서 큰따옴표를 표현하고자 할 때 사용 

\t 

탭문자. 키보드의 탭키를 눌렀을 때와 같은 효과 

 \0

 문자열이 끝났음을 알리는 null 문자


반응형
Posted by 컴스터
,
반응형

Swift 웹상에서 문법 연습 할 수 있는 사이트 - IBM Swift Sandbox

 

굳이 맥이 없어도 인터넷만 연결되어 있으면 간단히 Swift 문법 코딩할 수 있는 요긴한 사이트를 소개 할까 합니다.

IBM Swift Sandbox 라는 사이트 입니다. 아래 링크를 클릭하면 이동합니다.

 

https://swift.sandbox.bluemix.net/#/repl

 

 

 

왼쪽에 간단히 Swift 코드를 입력하고 밑에 실행 버튼을 클릭하면 오른쪽에 결과가 출력됩니다.

간단히 Swift 문법 공부할 때 요긴 하겠죠? ^^

 

반응형
Posted by 컴스터
,
반응형

메모리 공간 분류(스택 영역, 힙 영역, 데이터 영역, 코드 영역).

 

프로그램을 실행하면 OS는 실행에 필요한 메모리 공간을 할당합니다. 할당되는 메모리 공간은 크게 스택 영역, 힙 영역, 데이터 영역, 코드 영역으로 구분됩니다.

스택(Stack) 영역은 지역변수, 파라미터, 리턴 값 등이 저장되는 영역입니다. LIFO(Last In First Out) 방식의 스택으로 메모리 공간을 관리합니다.

 

(Heap) 영역은 동적으로 할당된 데이터가 저장되는 영역입니다. 데이터 영역과 스택 영역은 컴파일러가 미리 할당할 공간의 크기를 예측할 수 있지만 힙 영역은 동적으로 할당되는 특성으로 인해 공간의 크기를 예측할 수 없습니다. 힙 영역에 저장된 데이터는 직접 해제하지 않을 경우 프로그램이 종료될 때까지 유지 됩니다.

 

데이터 영역에는 정적 변수와 전역 변수가 저장됩니다. 이 영역에 저장된 데이터는 프로그램이 종료 될 때까지 유지됩니다.

 

코드 영역에는 기계어로 번역된 프로그램 코드가 저장됩니다.

반응형
Posted by 컴스터
,
반응형

XCODE 최신 버전으로 업데이트후 간단히 테스트 목적으로 한줄 코딩후 실행 시키니 다음과 같은 오류 메세지가 났을 때 처리 방법입니다.


A build only device cannot be used to run this target.


No supported iOS devices are available. Connect a device to run your application or choose a simulated device as the destination.


시뮬레이터가 선택이 안되서 나오는 오류였습니다.

우선 xcode에서 Xcode 메뉴하위에 Preferences 를 클릭한다.



Components를 클릭하여 iOS 11.0 simulator 를 설치합니다.



설치를 완료 한 다음 XCode를 완전히 종료 했다가 다시 실행합니다.

그리고 Generic iOS Device를 클릭합니다.





그러면 선택할 수 있는 시뮬레이터 리스트가 나옵니다.


iPhone X를 선택합니다.



이제 실행 시키면 오류 메세지 없이 잘 실행됩니다.








반응형
Posted by 컴스터
,


반응형