이 글을 읽는 모두가 Swift를 배우는 동문이라고 생각하고 경어체로 작성된 글입니다.
이전 글에서는 문자열 선언이라는 제목을 사용했지만, Swift에서 변수를 선언할 때 알아야하는 전반적인 내용에 대해 다뤘으니깐 궁금하다면 보고와 ~
1편 링크: [Swift] String(1) - 문자열 선언
String 관련 함수
우선 알아둬야 할 부분이 있어.. String에 관련된 함수를 제대로 소개하자고 한다면 위의 사진에 빨간 네모칸 보여?.. 저걸 누르면 판도라의 상자가 열려 :)
굉장히 많은 메소드와 프로퍼티들에 대한 목록이 나올 텐데, 이걸 일일이 알려주는건 무리이기도 하고.. 사실 가끔씩 쓰이는 것들은 나처럼 Apple Developer Documents 에 들어가서 확인하면 되거든
그렇기 때문에 내 개인적인 기준으로 많이 쓰이는 함수들이나 유용한 팁들을 공유해볼게 ~~
[1] 빈 문자열 초기화 및 확인
var emptyString = ""
var anotherEmptyString = String()
문자열 초기화 방법에 대해서는 (1)편에서 다뤄봤기 때문에 넘어가도록 할게!
var로 선언한 이유는 후에 저 문자열의 값을 바꾸기 위함이라는 것도 이제는 알고 있겠지 :->
자 그럼 중요한 점들을 짚어보자.
우리가 코드를 위와 같이 작성했다고 하면, emptyString과 anotherEmptyString은 모두 비어있는 문자열이라는 것을 알고 있을거야.
근데 여기서 !
생각해보면 우리가 작성한 코드이기 때문에 String들이 비었다는 걸 알고 있는데 굳이 String이 비었는지 재차 확인할 필요가 있을까?
해당 의문에 대한 답은 굉장히 여러 개가 나올 수 있지만,
" 대표적으로는 어디에선가 정보를 받아와서 String에 저장을 한 뒤 정상적으로 불러와졌는지 확인하는 코드 "
나는 일반적으로 위의 경우에서 많이 사용했던 것 같아.
예시를 들어보자 !!
var emptyString = ""
var text = ""
/* 특정 txt파일에서 정보를 불러와 text 변수에 내용을 저장하는 코드가 있다고 가정 */
emptyString = text
if emptyString.isEmpty {
print("txt 파일의 내용이 비었거나, 정상적으로 정보가 전달되지 않았습니다.")
} else {
print("정상적으로 전달이 완료되었습니다.")
}
txt파일에서 내용을 불러오는 코드를 넣으면 코드가 복잡해질 것 같아서 생략하고 이렇게 작성해봤어
혹시 if문에 대해 잘 모르는 친구는 if문에 대해 공부하고 다시 코드를 보면 훨씬 이해가 잘 될 거야 :)
isEmpty 메소드는 반환 값으로 Bool 값을 가지고 있어!
[ 여기서 Bool 값이란 ture/ false 둘 중 하나의 값을 저장하는 변수를 의미해 ]
-> 비어있으면 true, 비어있지 않으면 false를 반환한다고 생각하면 돼!
위의 if 조건문에서 내가 emptyString.isEmpty를 조건으로 사용한 이유도 이해가 되겠지?
[2] 특정 문자열을 다른 문자열에 삽입
이건 아주 기초 중의 기초 내용이지만 없으면 안되는 내용이기 때문에 넣어볼게 !
var testString = "Mins' Blog"
var Description = "Blog name is \(testString)"
print(Description)
print("Blog name is \(testString)")
이렇게 하면 디버깅 창에 출력이 어떻게 될까?
.
.
이렇게 출력이 됩니다 ~~
물론 "+" 연산자를 이용해서 String을 붙이는 방법도 있지만 이 방법도 정말 많이 쓰이기 때문에 알아두는게 좋아!
( 나는 거의 이 방법만 쓰는 느낌.. )
** 꿀팁 **
초보 분들은 Xcode를 다룬지 얼마 안됬기 때문에 모를 만한 꿀팁 !
여기서 testString을 "\()"로 감싸고 싶을 때 !!
testString을 위의 이미지와 같이 드래그 한 뒤, "(" 를 입력하면 자동으로 괄호가 씌워져
물론 ( " ), ( ' ), ( [ ), ( { ) 등도 다 가능하니깐 유용하게 사용해 ~~
[3] 문자열의 비교
let min = "Min's programming"
let not_min = "Mong's programming"
if min == not_min {
print("변수명과는 어울리지 않지만 둘이 동일하군요")
} else {
print("둘은 다른 String 입니다 ~")
}
기본적으로 비교라는 것은 어떠한 조건문 안에서 조건으로 쓰이는 것들을 의미해 !
대부분의 Type들과 마찬가지로 문자열도 내용이 같은지를 판별할 때, " == " 연산자를 붙여.
아 그리고 같지 않은지를 묻는 경우에는 " != " 연산자를 사용한다는 점 알아둬 !!
사실 "==" 연산자를 사용하려면 Comparable protocol을 따라야 하는 것도 알아야 하지만
너무 뒤의 내용이기 때문에 언급만 해둘게 :0
Protocol은 일단은 "약속"이라고 생각해두자 !!
String을 만든 사람들이 Comparable이라는 Protocol(약속)을 따르도록 했기 때문에 우리는 String을 "==" 연산자로 비교할 수 있는 것이라는 점.
궁금한 친구들은 https://developer.apple.com/documentation/swift/comparable/ 이곳을 참고해 봐 !! ( Protocol 부분 )
-> 블로그를 찾아보는 것도 매우 좋은 자세지만, iOS Programming을 먼저 공부해본 입장으로써 영문으로 된 공식 자료에서 원하는 내용을 찾아 공부하는 습관을 들이는게 정말정말정말!!! 중요한 습관이니 꼭 알아둬 :0
[4] 다른 함수들
사실 이 글을 읽을 친구들은 거의 공부를 처음 시작하는 친구들일 것이기 때문에,, 내가 모든 내용을 전부 알려주는 건 의미가 없을 거라고 생각해 !
위와 같이 말한 이유는
(1) 무릇 개발자라면(?) 모르는 내용이 생겼을 때, 공식자료 혹은 필요한 자료를 찾아볼 수 있어야 함.
(2) 모든 내용을 소개하기 보다는 내가 실제로 코딩을 하면서 많이 사용했던 내용들에 대해 설명해주는게 더 유용할 것 같다는 생각이 들었음.
(3) 사실 전부 소개하기에는 내용이 많아도 너무 많다는 것도 있음... ㅎㅎ
그렇기 때문에 ~~
내가 문법에 대한 의문이 들었을 때 자주 애용하는 페이지들을 공유해줄게 !
1. 애플 공식 도큐먼트
2. The Swift Language Guide - 한국어 번역본
물론 깊은 내용이라면 StackOverFlow 또는 시니어 개발자 분들의 Blog를 참고하는 것도 매우 좋은 선택이야 :)
[5] 마무리
휴 드디어 String에 대한 글을 마쳤구만,, 물론 아주 많이,, 부족하고 초보 블로거인 내가 쓴 글이기 때문에 이해가 잘 안됬을 수도 있는데 끝까지 읽어줘서 고마워 ^0^
문법은 언뜻 보면 쉬워보이지만 깊게 볼 수록 몰랐던 부분도 많고,,
조금 더 깨달을 수록 내가 짠 코드들에 대한 전반적인 이해가 늘어나기 때문에 (전에 짠 코드에 대한 부끄러움을 느낄 수 있으니 주의.)
주니어를 졸업하는 그날까지 손에서 놓지 않도록 해야겠어 !!
틀린 내용이나 궁금한 내용 있으면 댓글에 남겨줘 ~~ 그럼 안녕 Bye Bye
'iOS > Swift' 카테고리의 다른 글
[Swift] String(1) - 문자열 선언 (2) | 2023.02.08 |
---|