Swift를 통해 알고리즘 문제를 푸는 도중에 궁금한 점이 생겨 질문드립니다.
var str = "abcd"
에서 str의 2번째 글자인 b를 e로 수정하고 싶습니다.
str[1] = "e"
str[str.index(str.startIndex, offsetBy: 1)] = "e"
를 시도해보았으나 실패하였고,
let index = str.index(str.startIndex, offsetBy: 1)
str.replaceSubrange(index...index, with: "e")
위와 같은 방식으로 원하는 결과를 얻긴 얻었으나 이렇게 하는게 맞나? 싶습니다.
1. replaceSubrange(_:with:)을 사용하는 방법 외에 다른 방법이 있는지
2. 1글자만 바꾸고 싶었으나 Range를 사용해야해서 index...index와 같은 범위를 사용하였는데, 이 부분을 더 개선할 수 있는지
알려주시면 감사하겠습니다.