4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Java】文字リテラル

Last updated at Posted at 2020-12-10

Javaの文字リテラル

についてまとめました。

文字列リテラルと文字リテラルの違いとは?

簡潔にまとめると以下の違いです。

文字リテラル

  • char 型で使用する
  • シングルクォーテーション「 ’」で囲む
  • 1 文字を表現する

文字列リテラル

  • String型を使用する
  • ダブルクォーテーションで囲む
  • 複数の文字のまとまりを表現する

【文字リテラルとは】

文字リテラルは一つの文字の値です。「a」や「あ」などが文字リテラルになります。

文字リテラルの書き方

文字リテラルを表すにはシングルクォーテーション(')で囲んで表現します。

char a = 'a';
char b = 'あ';

以下のようにシングルクオートの中が空っぽであったり、文字列だったり、nullが入力されているとエラーになる。

char a = '';
char a = 'あいうえお';
char a = null;

Unicode

コンピュータ内部では文字ひとつひとつに数値が割り当てられていて、この文字に対して割り当てられた数値のことを文字コードと呼んでいる。

文字コードには色々な業界規格があり、Javaはそれら規格の中でUnicodeを使っている。

Unicodeとは

Unicodeは「符号化文字集合」と言われ、世界中の文字に対して、番号が割り当てられ管理されている集合体のこと。ここで割り振られている番号のことをコードポイントと言います。コードポイントは符号位置(文字集合内の文字の位置)であって、符号化方式ではありません。コードポイントは16進数表示で頭にU+を付けて用いられる。

Javaでは以下のように「\u」の接続詞の後ろに16進数4桁をつけシングルクォートで囲って表現する。

public class Main {
    public static void main(String[] args) {
        char d = '\u30A2';
        System.out.println(d);
    }

}

char型を変数に数値を代入する

上記のような特性から、char型を変数には0 ~ 65535までの数値を代入できます。下記はアルファベットのAを表示するプログラムです。

public class Main {
    public static void main(String[] args) {
        char e = 65;
        System.out.println(e);
    }

}
A

プリミティブ型にnullの代入は不可

nullは参照型変数が何も参照しないことを表現するためのデータのため、char のようなプリミティブ型の変数は値を保持するものであるため、参照を保持できない。

つまり nullを格納することが出来ないということ。

【まとめ】

Silver試験の対策としては以下を抑える。

  • charは 1文字を表現する
  • char型の変数にはダブルクォーテーションで囲った文字リテラルは代入できない
  • 文字リテラルにnullは代入できない
  • char型を変数には0 ~ 65535までの数値を代入できる

参考文献・記事

Java 基礎知識( データ型 )【 Okapi Project 】

Javaの文字コードについてのまとめ

https://www.javadrive.jp/start/num/index3.html

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?