Part4: 文字列型

ことり「今回は文字列。名前の通り、文字の並びを表すデータ型です」

ことり「Kotlinには1つの文字を表すChar型と、文字列を表すString型があります」
凛「1文字だと型も違うの?」
ことり「1文字の文字列、っていうのもあるから、文字数の話じゃないよ。Charを並べるとStringになる感じ」

ことり「Charはさっきも言ったとおり文字の表現で、'a'みたいに書きます。整数の文字コードを値として持ってるんだけど、型が違うからそのまま数値としては扱えないんだ」
凛「前回やったみたいにtoIntとかすればいいの?」
ことり「うん。'a'.toInt()ってすると97になるよ」

ことり「文字列のStringは、後で出てくる配列と似てるかな。Charを並べたものです」

k
o
t
o
r
i

ことり「[]を使ってインデックスアクセスができます。インデックスは0からだよ」
凛「そういえば、1から始まる言語って聞いたことないにゃ」
ことり「この世界にはVBとかCOBOLとかって言語があってね・・・」
凛「ふ、触れちゃいけない話題だった?」

ことり「forを使ったループはあとで詳しく見るけど、文字列から1文字ずつ取り出して処理ができる感じかな」

ことり「Kotlinの文字列は不変です。だから、一度作った文字列を変更することはできないし、変更っぽく見える操作は新しい文字列を作って返しているだけです」
凛「気を抜くとはまりそうな要素がいろいろと・・・」
ことり「まあ、最近のメジャーな言語だとだいたい文字列は不変だから、Kotlinだけ特別、ってわけじゃないよ」

ことり「文字列リテラルは書き方が2つあります」

にゃ
ちゅんちゅん
ここには複数行書けます
メタ文字も書けます\n

ことり「改行文字\nみたいなメタ文字も、"""で囲った場合はエスケープされて書いたとおりの文字として扱われるよ」
凛「普通に\を書こうとしたらお約束通り\\になるの?」
ことり「うん。Kotlinでもエスケープ記号は\です」

ことり「最後に、文字列テンプレートを見ておきますね」

南ことり、2年生です!

ことり「こんなふうに、${...}っていう書き方を文字列に埋め込むと、変数の値に展開されます。変数だけじゃなく、式も書けるよ」
凛「文字列組み立てるのに何個も+でつなげなくていいんだね。すっきりするにゃ!」


ことり「次回は配列型です。まだそんなに難しい段階じゃないし、この調子で進みましょう♪」
凛「おーっ!」


LINEで送る
Pocket


コメントを残す

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