Swift / String 정리
공포의 스트링
스위프트에서 스트링 다루기가 너무 힘들다..
정리해봐야겠다.
정리하고나면 별거 아니겠지..
선언
var alpha = [Int](repeating: 0, count: 26)
입력받아야지
let str = readLine()!
//아직 왜 느낌표 붙이는지 정확하게 이해하지 못했다.
//옵셔널에 관한 공부가 필요하다.
//입력이 안될리가 없어! 라는 느낌의 느낌표로 이해하고 있다.
입력을 했다고 치자
sobbang
스트링 그대로 출력
print(str)
/*
출력내용
sobbang
*/
스트링 속 문자들 하나씩 출력
for c in str {
print(c)
}
/*
출력내용
s
o
b
b
a
n
g
*/
스트링 속 문자 하나 출력
당연히
print(str[0])//오류발생
이라고 하면 될 줄 알았으나
string.index를 써보시는것은 어떻냐는 제안을 받을 수 있다.
(오류발생)
str 속 내용물의 크기가 일률적이지 않기 때문인 것으로 이해했다.
str[1]은 str[0] 다음칸의 녀석일텐데, 한칸의 단위가 그때그때 다르기 때문인 것 같다.
그래서 아래와 같이 작성해야 한다.
print(str[str.startIndex])
/*
출력내용
s
*/
두번째 문자 출력
print(str[str.index(str.startIndex, offsetBy: 1)])
/*
출력내용
o
*/
이렇게 까지 해야하나 싶지만 쓰다보니 편안~하다.
2번째집 문앞으로 가는 방법
집[2번째]
집[집주소(1번집, (집사이의 거리)*1칸)]
이런식으로 이해하고 있다.
나중에 더 써야지
숫자를 아스키코드 알파벳으로 바꾸기
var s = UnicodeScalar(65+1)
//B 출력
입력받아서 띄어쓰기 기준 인트배열로 바꾸기
var arr = read.components(separatedBy: " ").map{ Int($0)! }
//왜?
var arr = read.components(separatedBy: " ").map({ (value : String) -> Int in return Int(value)! })
var arr = read.components(separatedBy: " ").map({ (value) -> Int in return Int(value)! })
var arr = read.components(separatedBy: " ").map({ (value) -> Int in Int(value)! })
var arr = read.components(separatedBy: " ").map({ (value) in Int(value)! })
var arr = read.components(separatedBy: " ").map({ Int($0)! })
var arr = read.components(separatedBy: " ").map() { Int($0)! }
var arr = read.components(separatedBy: " ").map{ Int($0)! }
Author And Source
이 문제에 관하여(Swift / String 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sobbang/Swift-String-정리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)