2.2 Strings

Joohyun·2022년 4월 4일
0

Strings

  • "를 이용하여 String 값을 표현한다.
let greeting = "Hello"
  • 여러 줄의 문자열일 경우 """를 이용한다.
let greeting = """
	Hello.
    Salutations.
	"""

print(greeting)
// Console
Hello.
Salutations.
  • Character 타입도 동일하게 "를 쓰되, 타입을 명시해주어야 한다.
let a = "a" // String
let b: Character = "b" // Character

Escape Character

  • ", ', \ 등이 문자열 내부에 들어갈 경우 \를 앞에 붙여 구별한다.

    • Double quote: \"
    • Single quote: \'
    • Backslash: \\
    • Tab: \t
    • Newline: \n
let greeting = "프로그래밍을 배울 때, 실행하는 가장 첫 문장은 대개 \"Hello, world!\" 이다."
  • """를 사용 시 Escape Character를 사용하지 않아도 된다.
let greeting = """
	프로그래밍을 배울 때, 실행하는 가장 첫 문장은 대개 "Hello, world!" 이다.
    """

isEmpty

  • 문자열이 빈 문자열이면 True, 빈 문자열이 아니면 False를 반환한다.
var myString = ""

print(myString.isEmpty) // true

Concatenation

  • 문자열끼리 + 연산자를 통해 서로 합칠 수 있다.
let string1 = "Hello"
let string2 = ", world!"
let myString = string1 + string2 // "Hello, world!"
  • += 연산자도 사용이 가능하다.
var myString = "Hello"
myString += ", world!" // myString = myString + ", world!"

Interpolation

  • \()를 통해 문자열 내부에 상수 또는 변수 값을 삽입할 수 있다.
let name = "Joohyun"
let age = 26

print("\(name) is \(age) years old") // Joohyun is 26 years old
print("\(name) will turn \(age + 1) next year") // Joohyun will turn 27 next year

==

  • ==연산자를 통해 문자열끼리 값이 같은지 비교할 수 있다.
let month = "January"
let otherMonth = "January"

print(month == otherMonth) // true

Case Sensitivity

  • == 연산자는 대소문자 여부만 다를 경우에도 문자열끼리 값이 다르다고 인식한다. 이를, case sensitivity라 부른다.
let month = "January"
let lowercaseMonth = "january"

print(month == lowercaseMonth) // false

lowercased()

  • 문자열 내부의 모든 문자를 소문자로 변경하여 문자열을 반환한다.
let name = "Johnny Appleseed"

print(name.lowercased() == "joHnnY aPPleseeD".lowercased()) // true

uppercased()

  • lowercased()의 반대 함수로 모든 문자를 대문자로 변경하여 문자열을 반환한다.

hasPrefix(_:)

  • 문자열이 파라미터로 입력된 문자열로 시작하는지 확인하여 Boolean 값을 리턴한다.
  • case sensitive 하다.
let greeting = "Hello, world!"

print(greeting.hasPrefix("Hello")) // true
print(greeting.hasPrefix("hello")) // false

hasSuffix(_:)

  • hasPrefix(_:) 와 마찬가지로 문자열이 파라미터로 입력된 문자열로 끝나는지 확인한다.
let greeting = "Hello, world!"

print(greeting.hasSuffix("world!")) // true

contains(_:)

  • 문쟈열에 파라미터로 입력된 문자열이 포함되어 있는지 확인한다.
let greeting = "Hi Rick, my name is Amy."

print(greeting.contains("my name is") // true

count

  • 문자열의 크기를 리턴한다.
let name = "Ryan mears"

print(name.count) // 10

Unicode

  • String 타입은 Unicode 형식을 사용하므로 특수문자, 이모지 등을 삽입할 수 있다.
  • Unicode와 다른 점은 모든 문자 하나의 크기를 1로 간주한다.
let cow = "🐮"
let credentials = "résumé"
print("∞".count) // 1

Excerpt From
Develop in Swift Fundamentals
Apple Education
https://books.apple.com/kr/book/develop-in-swift-fundamentals/id1581182804?l=en
This material may be protected by copyright.

profile
Developer

0개의 댓글