JavaのCharacterクラスとは?主要メソッドと使い方を実例付きで解説
JavaのCharacterクラスは、プリミティブ型 char の値をオブジェクトとしてラップ(包み込む)ためのラッパークラスです。Characterクラスのオブジェクトは、char 型の値を1つだけ格納する単一のフィールドを持っています。
コレクションやジェネリクスなど、オブジェクトしか扱えない場面で char の値を使いたい場合に、このクラスが役立ちます。また、文字が英字か数字かを判定するユーティリティメソッドも数多く提供されています。
Characterクラスの主なメソッド
以下に、Characterクラスでよく使われるメソッドを紹介します。
| 修飾子と型 | メソッドと説明 |
|---|---|
static int | charCount(int codePoint) 指定されたコードポイントを表すために必要な char 値の数(1または2)を判定します。 |
char | charValue() このCharacterオブジェクトが保持している char 値を返します。 |
static int | codePointAt(char[] a, int index)char 配列の指定されたインデックス位置にあるコードポイントを返します。 |
static int | codePointAt(char[] a, int index, int limit)limit 未満のインデックスの配列要素のみを対象として、char 配列の指定されたインデックス位置にあるコードポイントを返します。 |
static int | codePointAt(CharSequence seq, int index) CharSequence(Stringなど)の指定されたインデックス位置にあるコードポイントを返します。 |
static int | codePointBefore(char[] a, int index)char 配列の指定されたインデックスの直前にあるコードポイントを返します。 |
static boolean | isLetter(char ch) 指定された文字が英字(レター)であるかどうかを判定します。 |
static String | toString(char c) 指定された char 値を表すStringオブジェクトを返します。 |
使用例1:isLetter()で文字種を判定する
まずは、isLetter() メソッドを使って、指定した文字が英字かどうかを判定する例を見てみましょう。
import java.lang.*;
public class Demo {
public static void main(String[] args){
System.out.println(Character.isLetter('0'));
System.out.println(Character.isLetter('h'));
System.out.println(Character.isLetter('K'));
}
}
実行結果
false true true
数字の '0' は英字ではないため false、小文字の 'h' と大文字の 'K' は英字であるため true が出力されます。
使用例2:toString()で文字を文字列に変換する
次に、toString() メソッドを組み合わせた例を見てみましょう。
import java.lang.*;
public class Demo {
public static void main(String[] args){
System.out.println(Character.isLetter('0'));
System.out.println(Character.isLetter('h'));
System.out.println(Character.isLetter('K'));
System.out.println(Character.toString('0'));
System.out.println(Character.toString('H'));
}
}
実行結果
false true true 0 H
toString() を使うことで、char 型の値をそのまま文字列(String)として出力できていることがわかります。
まとめ
Characterクラスを使うことで、char のプリミティブ値をオブジェクトとして扱えるだけでなく、文字種の判定やコードポイントの操作など、文字に関する便利な処理を簡単に実装できます。日常的な文字列処理の中で頻繁に活用されるクラスなので、主要なメソッドの動きを押さえておくと良いでしょう。
-
Javaの抽象クラスとは?基本ルールと実装例をわかりやすく解説
Javaの抽象クラスとは宣言に「abstract」キーワードを含むクラスは、抽象クラスと呼ばれます。抽象クラスは、継承によって利用されることを前提とした設計用のクラスであり、オブジェクト指向プログラミングにおける重要な概念の一つです。抽象クラスの主な特徴抽象クラスには、抽象メソッド(本体を持たないメソッド。例:public void get();)が含まれる場合もあれば、含まれない場合もあります。ただし、クラス内に1つでも抽象メソッドが存在する場合、そのクラスは必ず abstract として宣言しなければなりません。abstract として宣言されたクラスは、インスタンス化(newによるオブジ
-
Javaのfinalクラスとは?継承を禁止する仕組みと使い方を徹底解説
Javaにおいて、クラスにfinal修飾子を付けて宣言する最大の目的は、そのクラスがサブクラス化(継承)されることを防ぐことです。クラスがfinalとして宣言されると、どのクラスもそのクラスを継承できなくなり、finalクラスの機能や振る舞いを拡張・変更することが不可能になります。finalクラスの基本構文finalクラスの宣言は非常にシンプルです。クラス名の前にfinalキーワードを付けるだけです。public final class Test { // クラスの本体 }このように宣言されたTestクラスに対して、以下のような継承を試みるとコンパイルエラーが発生します。// コンパイ