【8日目】中卒が本気で「Swift」を学ぶ実践記

どうも、はるかす(@mametyralove)です。

さぁ8日目。やって行きますよ〜
今日は少し時間がないのですが、時間がない日でも少しはやりますよ。
継続が大事ですからね。
さぁ勉強勉強!

文字列型

今までは基本的に数値を扱ってきましたが、今回は文字列型をやっていきます。

文字列型はStringで指定します。
ただ、文字列を入れればわざわざ指定しなくても自動的にString型と判断してくれるので手間を省くことができます。
以下のコードはplace1もplace2も同じものが定義されていることになります。

コード
let place1: String = “Kyoto”
let place2 = “Kyoto”

文字の結合

文字の結合とは、簡単に言うと複数ある文字列を繋げることを指します。
例えば、「カレー」と「食べたい」という文字列があったとしてそれを繋げて「カレー食べたい」にすることです。
コードはかなり単純なのでとても簡単です。

コード
let string1 = “カレー”
let string2 = “食べたい”
let string3 = string1 + string2

結果
カレー食べたい

文字列の文字数を取得する

文字数を取得するっているこの「取得」するってなんかプログラミングらしくなってきて好きです。
ただ、ちょっと難しいです。
覚えたら簡単なんですけど「.utf16.count」を使います。
ここでは文字列を取得して、表示するコードを書きます。
どうせならさっきの続きで書きますね。

コード
let num = string3.utf16.count
print(num)

結果
7

文字列の一部を取り出す

これかなり難しい。
理解はすぐにできたんですけど、頭に入らない…
まぁ一応やりますよ。
多分使うことはないと思うんですけどねぇ…

先ほどまではString型でやりましたが、文字列の一部を取得するにはNSString型に型変換しなければいけません。
それを可能にするのが「as」です。

コード
import Foundation

let value = “HelloWorld”

let string1 = (value as NSString).substring(from: 5)
let string2 = (value as NSString).substring(to: 5)

print(string1)
print(string2)

結果
World
Hello

メソッド 説明
substring(from: x) x番目の文字から末尾までの文字を取得する
substring(to: x) 先頭からx番目の文字まで取得する

文字列の比較

文字列の比較とは、この文字列とこの文字列は同じかな〜って比較するものです。
数値を比較した時と結構似ているので簡単でした。

コード
let string1 = “Hello”
let string2 = “Hello”
let string3 = “hello”

if string1 == string2{
    print(“same”)
}else{
    print(“different”)
}

if string1 == string3{
    print(“same”)
}else{
    print(“different”)
}

結果
same
different

文字列を数値に変換

流石に数字以外のstring型は数値に変換できませんが、数字の文字列を数値型に変更する方法があります。

コード
let stringValue = “20”

let num1 = 5 + Int(stringValue)!
let num2 = 3.5 + Float(stringValue)!

print(num1)
print(num2)

結果
25
23.5

まとめ

今日は文字列型を沢山できて楽しかったですね。
正直数字より好きです。
それはプログラミングしていく上で大丈夫なのか、とかいう意見も聞こえてきそうですがとりあえずいいでしょう。

  • 文字列を結合
  • 文字列を取得
  • 文字数を取得
  • 文字列を数値に変換

今日はこんなことを覚えることができました。
明日も頑張って行きます!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です