[네부캠-베이직] mission6에서 배워가는 swift 문법

syeony·2024년 7월 4일
0
post-thumbnail

문법

1. 배열의 마지막 값 불러오기

var arr: [Int] = []
arr.append(1)
arr.append(2)
print(arr[-1]) //ERROR

처음엔 단순히 파이썬처럼 arr[-1] 출력해주면 되겠지? 생각했다가 에러가 났다.

Thread 1: Fatal error: Index out of range

찾아보니 다른 방법으로 마지막 값을 출력하는 방법도 있었다.

print(arr.last)

그런데 이렇게 출력하면 나오긴 나오지만 Optional(2) 식으로 출력된다. 숫자만 출력하고 싶다!

if let last = arr.last {
		print(last)
}

이렇게 if let을 붙여 다른 변수에 넣어주니 숫자만 잘 출력됐다.

2. 옵셔널 / 옵셔널 언래핑

var A: Int? = nil 
var B: Int? = nil 
// 변수 A, B에 값을 넣었을 수도 있고 안 넣었을 수도 있다는 가정 하에
arr.append(A+B) //ERROR

옵셔널 변수들을 그냥 더했더니 에러가 났다.

Binary operator '+' cannot be applied to two 'Int?' operands

옵셔널 값을 일반 변수처럼 사용하려면 아래와 같이 사용하여야 한다.

if let Avalue = A, let Bvalue = B {
    arr.append(Avalue + Bvalue)
}

if let으로 다른 변수에 값을 넣어 더해주면 잘 들어간다.

느낀점

옵셔널에 대해서 한번 더 짚고 넘어갈 수 있었다. 기초적인 옵셔널 문법은 알고 있었는데 실제로 사용해볼 일이 없어 코드로는 작성해본적 없었는데, 이 기회에 코드로 작성하고 에러를 몸소 겪어보니 또 다르게 느껴졌다. 알고만 넘어간 문법도 실제로 코드에 적용을 해봐야 완전한 내 것이 되는 것 같다.

profile
모바일 어플리케이션, cross platform과 iOS에 관심이 많은 개발자 오승연입니다

0개의 댓글