티스토리 뷰
당연하게도 Swift에서는 C 문법들을 지원한다. 어미가 Objective-C니 어쩔 수 없겠지.. 하지만 헷갈리는 나 같은 사람들을 위해 typeAlias
로 친절히 명시해주었다.
C - Swift
-
signed char → Int8 = CSignedChar
-
short → Int16 = CShort
-
int → Int32 = CInt
-
long → Int = CLong
-
long long → Int64 = CLongLong
자바는 친절하게도 C와 상당히 비슷한데
Java - Swift
-
short[] → [Float], [CShort]
-
short → CShort
-
int[] → [Int]
-
int[][] → [[Int]]
-
double → Float (Double도 있지만 해당 범위까지 사용하지 않으므로 다운스케일)
-
long → Int
자바에는 unsigned 타입이 없다. 따라서 byte는 항상 -128
127의 범위를 가지는데, 0
255의 범위가 필요할 때는 아래와 같이 사용할 수 있다.
byte a = xxx; int b = 0;
if (a < 0)
b = (int)a + 256;
else
b = (int)a;
byte a = xxx;
int b = (int)a & 0xFF;
두 방식 모두 byte 타입 내에선 (당연히) 불가능하므로 int 타입으로 리턴된다.
'제2외국어' 카테고리의 다른 글
NSString 비교 메소드 (0) | 2017.07.11 |
---|