공식문서를 읽어보면 바로 알겠지만 endIndex
의 네이밍만 보면 String
의 마지막 인덱스를 반환해주는것처럼 보입니다.(의심되면 바로 읽어봅시다ㅠㅠ 내시간..)
The array’s “past the end” position
쉽게 말해서 (우리가 생각하는)마지막 인덱스에서 + 1을 해준 값이 됩니다.
string[string.endIndex]
이렇게 사용하면 에러가 나겠죠?
추가로 문자열
에서 마지막에 해당하는 문자를 구하기 편하도록 구현해보았습니다.
extension String {
var lastString: String {
get {
if self.isEmpty { return self }
let lastIndex = self.index(before: self.endIndex)
return String(self[lastIndex])
}
}
}