6-2. 文字型とリテラル
概要
任意の一文字を扱うデータ型です。
リテラル
シングルクォーテーション 「’」で、文字を囲います。
半角の英数字、およびいわゆる日本語のひらがな・カタカナ・漢字いずれも シングルクォーテーションで囲う形となります。
例
'a'
'あ'
'ア'
'字'
また、タブや改行文字など単なる文字入力では表せない文字をエスケープシーケンスエスケープ記号であるバックスラッシュ (\) + 1文字 で表します。
エスケープシーケンス | 説明 |
---|---|
\t | タブ |
\b | バックスペース |
\n | 改行 (newline) |
\r | 復帰 (カーソルを先頭に戻す) |
\’ | シングルクォーテーション |
\" | ダブルクォーテーション |
\\ | バックスラッシュ(\マーク) |
\$ | ドルマーク |
さらに、頭に 「\u」をつけて その後 ユニコード(Unicode) を指定できます。
ユニコードは、ユニコードコンソーシアムのサイトなどから確認できます。
文字型
型を宣言する際は「Char」を使います。
データタイプ | ビット数 |
---|---|
Char | 4 bit |
注意
Char 型の変数が保持できる値は「文字一つ」だけです。複数の文字が含まれるとコンパイルエラーになります。(以下の例を参照)
例
文字型の変数とリテラルでの代入の例
fun main() { val alphabetA: Char = 'a' val hiraganaA: Char = 'あ' val katakanaA: Char = 'ア' val kanjiJi: Char = '字' val unicodeA: Char = '\u3042' println("アルファベット: " + alphabetA) println("ひらがな: " + hiraganaA) println("カタカナ: " + katakanaA) println("漢字: " + kanjiJi) println("Unicode 3042: " + unicodeA) }
実行例
アルファベット: a
ひらがな: あ
カタカナ: ア
漢字: 字
Unicode 3042: あ
Kotlin Playground で実行
エラーの例
複数の文字を Char 型に定義しょうとすると error: too many characters in a character literal XXXX となります。
>>> val alphabet_a: Char = 'aa'
error: too many characters in a character literal ''aa''
val alphabet_a: Char = 'aa'
^