Javaちょこっとリファレンス ブログ

Java開発時にぜひご利用ください。

Java基本 標準API

[Java] 文字列の長さを取得する(length、codePointCount)

投稿日:2019年8月10日 更新日:

文字列の文字数を取得するにには、.length() または .codePointCount() を使用します。

両方とも全角半角文字混在していても問題ありません。

違いは、.lengthではサロゲートペア文字が含まれている場合は正しくカウントできないという事です。 判定する文字列にサロゲート文字が含まれる可能性がある場合は、.codePointCount を使用してください。

サンプルソース

例)文字数を取得する(.length)

結果例
5 3 8

文字数を取得する(.codePointCount)

結果例
3 2

備考

  • サロゲートペア文字とは、簡単にいうとUnicodeで1文字で4バイト割り当てられている文字のことです。(通常は1文字で2バイト)

スポンサーリンク

スポンサーリンク

-Java基本, 標準API
-

執筆者:


comment

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

[Java共通部品] 文字列のバイト数を取得する

文字列のバイト数を取得するサンプル共通関数です。 サンプルソース 例)引数に指定した文字列のバイト数 ...

[Java] 配列の最後の要素を取得する

配列の最後の要素を取得するサンプルです。 サンプルソース 例)List型の最後の要素を取得する [c ...

[Java] タイムゾーンを取得する(.getTimeZone)

Javaでタイムゾーンを取得するには、TimeZone#getTimeZone を使用します。 サン ...

[Java共通部品] 日付文字列(YYYYMMDD)から曜日を取得する

日付文字列(YYYYMMDD)から曜日を取得する共通関数です。 サンプルメソッド 例)日付文字列(Y ...

[Java] Enum型をswitch文で分岐する

Enum型をswitch文で分岐するサンプルです。 サンプルソース 例)Enum型をswitch文で ...