文字ヘルパーメソッド
isDigit、isLetter、toUpperCaseを学びます。
「文字ヘルパーメソッド」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全4レッスンが含まれています。
Character クラス
Java の Character クラスには、char を扱うための便利な static ヘルパーメソッドが用意されています。
これらはクラス自体に対して呼び出し、Character.isDigit(c) のように char を引数として渡します。自分で計算しなくても、役立つ結果を返してくれます。
char c = '4';
boolean digit = Character.isDigit(c);数字かどうかを確認する
Character.isDigit(c) は、char が '0' から '9' までの数字である場合に true を返します。
自分でコードを比較するよりも簡潔で安全なうえ、他の言語の数字も認識します。
public class Main {
public static void main(String[] args) {
System.out.println(Character.isDigit('8'));
System.out.println(Character.isDigit('x'));
}
}文字かどうかを確認する
Character.isLetter(c) は、'a' や 'Z' のようなアルファベット文字に対して true を返します。
数字、空白、句読点に対しては false を返します。テキストから文字だけを残す場合に使ってください。
public class Main {
public static void main(String[] args) {
System.out.println(Character.isLetter('Q'));
System.out.println(Character.isLetter('3'));
}
}文字または数字
Character.isLetterOrDigit(c) は、両方のチェックを組み合わせたものです。文字と数字には true、記号には false になります。
ユーザー名の検証や句読点の除去に便利です。
public class Main {
public static void main(String[] args) {
System.out.println(Character.isLetterOrDigit('a'));
System.out.println(Character.isLetterOrDigit('!'));
}
}空白文字を検出する
Character.isWhitespace(c) は、char が空白、タブ、改行のいずれかどうかを判定します。
テキストを読み取るときに空白部分を飛ばしたり、実際の単語数を数えたりする場合に使ってください。
public class Main {
public static void main(String[] args) {
System.out.println(Character.isWhitespace(' '));
System.out.println(Character.isWhitespace('a'));
}
}大文字と小文字を判定する
Character.isUpperCase(c) と Character.isLowerCase(c) は、文字の大文字・小文字を確認します。
数字や記号のような文字以外では、大文字・小文字の区別がないため、どちらも false を返します。
public class Main {
public static void main(String[] args) {
System.out.println(Character.isUpperCase('A'));
System.out.println(Character.isLowerCase('A'));
}
}大文字に変換する
Character.toUpperCase(c) は、文字を大文字にした結果を返します。
char がすでに大文字の場合や文字でない場合は、そのまま返します。元の char 値がその場で変更されることはありません。
public class Main {
public static void main(String[] args) {
char c = 'g';
System.out.println(Character.toUpperCase(c));
}
}小文字に変換する
Character.toLowerCase(c) は反対に、文字を小文字にした結果を返します。
この2つのメソッドを組み合わせると、大文字・小文字を区別せずに文字を比較できます。
public class Main {
public static void main(String[] args) {
char c = 'H';
System.out.println(Character.toLowerCase(c));
}
}数字の char を数値に変換する
Character.getNumericValue(c) は数字の char を int 値に変換します。'5' の場合は 5 を返します。
'0' を引く方法に代わる安全な手段で、コードの意図もより明確になります。
public class Main {
public static void main(String[] args) {
char d = '9';
int n = Character.getNumericValue(d);
System.out.println(n + 1);
}
}ヘルパーメソッドを組み合わせる
チェックを組み合わせることで、判断を行えます。ここでは、どの種類の文字なのかを報告します。
このパターンはテキスト処理の基本です。各 char を調べ、その分類に応じて処理します。
public class Main {
public static void main(String[] args) {
char c = '?';
if (Character.isLetter(c)) System.out.println("letter");
else if (Character.isDigit(c)) System.out.println("digit");
else System.out.println("other");
}
}メソッドは変更せずに値を返す
toUpperCase のようなヘルパーメソッドは、新しい値を返すことを覚えておいてください。char はプリミティブなので、値渡しされます。
結果を変数などに格納する必要があります。保存せずにメソッドを呼び出しても、何も変わりません。
char c = 'a';
char big = Character.toUpperCase(c);
System.out.println(big);クイックチェック
Character ヘルパーメソッドについての理解度を確認しましょう。
まとめ
Character クラスには、isDigit、isLetter、isWhitespace、isUpperCase などの static ヘルパーが用意されています。
toUpperCase、toLowerCase、getNumericValue などの変換ヘルパーは新しい値を返すため、保存する必要があります。これらを組み合わせて、テキストの分類や不要な文字の除去を行ってください。
よくある質問
「文字ヘルパーメソッド」レッスンは無料ですか?
はい。「文字ヘルパーメソッド」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全4レッスンが含まれています。
「文字ヘルパーメソッド」で何を学びますか?
isDigit、isLetter、toUpperCaseを学びます。 ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Java Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「文字ヘルパーメソッド」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJava Academyレッスンでコードを書いて実行できますか?
はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- charプリミティブ
- 文字ヘルパーメソッド
- 文字をループ処理する
- 文字のカウントとフィルタリング