포스트

4. 대소문자 바꿔서 출력하기

나의 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import Foundation

let s1 = readLine()!

var answer : String = ""

for i in s1 {
    if i.isLowercase == false {
        answer += i.lowercased()
    } else if i.isUppercase == false {
        answer += i.uppercased()
    }
}

print(answer)

이렇게 생각한 이유 스위프트는 문자열로 for문이 가능하므로 for문으로 접근을 했다. if문을 통해 대문자가 아니라면 대문자로 전환하고 소문자가 아니라면 소문자로 전환하여 누적하게 하여 출력했다.


  1. 대문자 소문자 변환
    • uppercased() : 대문자로 변환
    • lowercased() : 소문자로 변환
  2. 대문자 소문자인지 확인
    • isLowercase : 소문자인지?
    • isUppercase : 대문자인지?
  • 각각 반환타입은 Bool이다.

    이것도 역시 다른 풀이를 보니 간단하게 한것이 많다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import Foundation
print(readLine()!.map { $0.isLowercase ? $0.uppercased() : $0.lowercased() }.joined())

//
import Foundation

let s1 = readLine()!
var answer = ""
for s in Array(s1) {
    answer += s.isUppercase ? s.lowercased() : s.uppercased()
}
print(answer)

//
import Foundation

let s1 = readLine()!

print(String(s1.map{ $0.isLowercase ? Character($0.uppercased()) : Character($0.lowercased()) }))

//
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.