반응형
LinkedIn 개발자로 성장하면서 남긴 발자취들을 확인하실 수 있습니다.
Github WWDC Student Challenge 및 Cherish, Tiramisul 등 개발한 앱들의 코드를 확인하실 수 있습니다.
개인 앱 : Cherish 내 마음을 들여다보는 시간, 체리시는 디자이너와 PM과 함께 진행 중인 1인 개발 프로젝트입니다.
10년 후, 20년 후 나는 어떤 스토리 텔러가 되어 있을지 궁금하다. 내가 만약에 아직 조금 더 탐구하고 싶은 게 있고, 궁금한 게 있다면, 그게 설사 지금 당장의 내 인생에 도움이 안 되는 것 같더라도 경험해보자. 그 경험들을 온전히 즐기며 내 것으로 만들고, 내 일에 녹여내고... 그러다보면 그 점들이 모여 나란 사람을 그려내는 선이 될 테니까.

Recent Posts
Recent Comments
Total
관리 메뉴

꿈꾸는리버리

removeLast() vs popLast() 본문

오뚝이 개발자/swift

removeLast() vs popLast()

rriver2 2022. 5. 24. 15:21
반응형

백준 풀다가 두개 개념이 다른가 ? 싶어서 찾아봤다 !

 

 공통점 

두 method 모두 collection의 마지막 element를 제거하고 반환하는 method이다.

 

 

 차이점 

- popLast()는 반환값이 optional이다 !

var nums = [1, 2, 3]
nums.removeLast() // 3
nums.removeLast() // 2
nums.removeLast() // 1
nums.popLast()	  // nil
nums.removeLast() // 에러 !

이렇게 배열의 값이 비었을 때 popLast()를 하면 nil 값이, removeLast()를 했을 때는 에러가 뜬다 !

 

 

 뭘 쓸까 ? 

 

우선은 배열의 값이 무조건 있다고 확신하는 경우에는 removeValue() 메소드를 써도 되지만,

빈 배열일 수도 있다면 popLast()를 사용하는게 좀 더 안전하다.

 

or

 

이렇게 빈 배열인지 확인하고 추출을 해도 된다!

var nums = [1, 2, 3]
nums.removeLast() // 3
nums.removeLast() // 2
nums.removeLast() // 1
nums.popLast()	  // nil

if(!nums.isEmpty){
	nums.removeLast() 
}

 

 

https://developer.apple.com/documentation/swift/array/2885764-removelast

 

Apple Developer Documentation

 

developer.apple.com

https://developer.apple.com/documentation/swift/array/1539777-poplast

 

Apple Developer Documentation

 

developer.apple.com

 

 

 Note 

그냥 popLast()만 있으면 되지 왜 removeValue()가 있는지는 잘 모르겠다,,

반응형
Comments