DEV Community

Too Leng
Too Leng

Posted on

【ChaoCode】 Swift 基礎篇 4:文字類型作業

Character 和 String 的差別

Character 是 String 中的單個元素,String 是由多個 Character 組成的字串。

.count 的用法

let greeting = "Hello"
print(greeting.count)  // 輸出: 5
Enter fullscreen mode Exit fullscreen mode

建立多行字串

let multiLineString = """
This is the first line.
This is the second line.
And this is the third line.
"""
print(multiLineString)

Enter fullscreen mode Exit fullscreen mode

印出雙引號 " 和斜線 \ 的方法

ASCII 是做什麼用的?
一種字符集,將文字對應到某個數字,讓電腦透過數字識別文字。
String 和 Character 之間的關係是什麼?
String 是由 Character 組成。
每一個 Character 都對應一個 Unicode 嗎?
不,一個字可能是由多個 Unicode 組合而成。



// 【ChaoCode】 Swift 基礎篇 4:文字類型實作作業
// 1. 根據以下已建立的符號,印出衝浪的男人和女人。(失敗時可以嘗試調整順序)

let 衝浪 = "🏄\u{200D}"
let 男人 = "\u{2642}\u{FE0F}"
let 女人 = "\u{2640}\u{FE0F}"


print("""
    🐬
🌊🌊🌊🌊🌊\(衝浪)🌊🌊🌊\(衝浪+女人)🌊\(衝浪+男人)🌊🌊🌊🌊🌊🏖🌴



""")

Enter fullscreen mode Exit fullscreen mode

// 2. 請 debug 下面的 code,讓皮卡丘和愛心圖案正確印出。如果圖片對你來說太大了可以把第 55 行後刪掉。(包含第 55 行,記得最後的 print 不能刪掉。)

let emoji = "\u{1F495}"
let heartArt =  """
\t\t\t\t\t\t\(emoji)\(emoji)\(emoji)\t     \(emoji)\(emoji)\(emoji)
\t\t\t\t\t  \(emoji)      \(emoji)\(emoji)      \(emoji)
\t\t\t\t\t \(emoji)        \(emoji)        \(emoji)
\t\t\t\t\t \(emoji)                  \(emoji)
\t\t\t\t\t  \(emoji)                \(emoji)
\t\t\t\t\t\t\(emoji)            \(emoji)
\t\t\t\t\t\t  \(emoji)        \(emoji)
\t\t\t\t\t\t\t \(emoji)   \(emoji)
\t\t\t\t\t\t\t   \(emoji)
"""

let s = "" // 這個 s 變數只是加了讓你再複製貼上時圖片不會因為空白鍵被自動吃掉而跑位,可以無視這行,如果你想在你的皮卡丘前面多加一些空白也可以調整這個變數的內容。
let pikachu = """
quu..__
\(s) $$$b  `---.__
\(s)  "$$b        `--.                          ___.---uuudP
\(s)   `$$b           `.__.------.__     __.---'      $$$$"              .
\(s)     "$b          -'            `-.-'            $$$"              .'|
\(s)       ".                                       d$"             _.'  |
\(s)         `.   /                              ..."             .'     |
\(s)           `./                           ..::-'            _.'       |
\(s)            /                         .:::-'            .-'         .'
\(s)           :                          ::''\\          _.'            |
\(s)          .' .-.             .-.           `.      .'               |
\(s)          : /'$$|           .@"$\\           `.   .'              _.-'
\(s)         .'|$u$$|          |$$,$$|           |  <            _.-'
\(s)         | `:$$:'          :$$$$$:           `.  `.       .-'
\(s)         :                  `"--'             |    `-.     \\
\(s)        :##.       ==             .###.       `.      `.    `\\
\(s)        |##:                      :###:        |        >     >
\(s)        |#'     `..'`..'          `###'        x:      /     /
\(s)         \\                                   xXX|     /    ./
\(s)          \\                                xXXX'|    /   ./
\(s)          /`-.                                  `.  /   /
\(s)         :    `-  ...........,                   | /  .'
\(s)         |         ``:::::::'       .            |<    `.
\(s)         |             ```
{% endraw %}
          |           x| \\ {% raw %}`.:`{% endraw %}{% raw %}`.
\(s)         |                         .'    /'   xXX|  `{% endraw %}:{% raw %}`M`{% endraw %}M':.
\(s)         |    |                    ;    /:' xXXX'|  -'MMMMM:'
\(s)         {% raw %}`.  .'                   :    /:'       |-'MMMM.-'
\(s)          |  |                   .'   /'        .'MMM.-'
\(s)          `{% endraw %}'{% raw %}`'                   :  ,'          |MMM<
\(s)            |                     `{% endraw %}'            |tbap\\
\(s)             \\                                  :MM.-'
\(s)              \\                 |              .''
\(s)               \\.               {% raw %}`.            /
\(s)                /     .:::::::.. :           /
\(s)               |     .:::::::::::`{% endraw %}.         /
\(s)               |   .:::------------\\       /
\(s)              /   .''               >::'  /
\(s)              {% raw %}`',:                 :    .'
\(s)                                   `{% endraw %}:.:'
"""
print(heartArt + "\n" + pikachu)


{% raw %}
Enter fullscreen mode Exit fullscreen mode

Sentry blog image

The countdown to March 31 is on.

Make the switch from app center suck less with Sentry.

Read more

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay