Java Javaのよく使用するメソッド一覧

【Java】javaのstringクラスのメソッドの使い方を徹底解説2 contains、getBytes、isEmpty、valueOf、codePointAt、codePointBefore、codePointCountメソッド編

1. はじめに

プログラムの世界では文字列の操作は避けて通れない道です。

Javaにおける文字列操作の多くは、Stringクラスに定義されているメソッドを用いて実行されます。

サルモリ
ちなみに、Stringクラスってどういうものなの?

Stringクラスは、Javaで文字列を扱うためのクラスです。

文字列を操作する際に、文字列連結や部分文字列の取得など、様々なメソッドが提供されています。

ここで解説するメソッドをマスターすることで、文字列操作のスキルがグッと上がりますよ!

JavaのStringクラスとその主要なメソッド

JavaのStringクラスには、多くの便利なメソッドが提供されています。

この記事では、

  • 「contains」
  • 「getBytes」
  • 「isEmpty」
  • 「valueOf」
  • 「codePointAt」
  • 「codePointBefore」
  • 「codePointCount」

などのメソッドを中心に解説します。

サルモリ
Javaで文字列操作をするときには、このStringクラスのメソッドを駆使するんだね!

1. contains()メソッド

contains()メソッドは、特定の文字列が含まれているかをチェックするためのものです。

例えば、"Hello, World!"という文字列に"World"が含まれているかどうかをチェックする場合、以下のように使用します。

ソースコード例

 出力結果
true 
サルモリ
簡単に文字列に特定の文字やフレーズが含まれているか確認できるんだね!

Java言語のStreamAPIを徹底的に学びたい方は画像をクリックしてご覧ください!
KindleUnlimited会員であれば、全ての本をご覧頂けます。 StreamAPIを理解すれば、Javaの世界が変わる 第1版

2. getBytes()メソッド

getBytes()メソッドは、文字列をバイト配列として取得するためのメソッドです。

文字列をファイルに書き込む場合や、ネットワーク越しに送信する場合などに役立ちます。

ソースコード例

 出力結果
72 101 108 108 111 44 32 87 111 114 108 100 33 
サルモリ
文字列をバイト配列に変換して、数値の羅列で表示されてるね。これを使えば、エンコードやデコードなどの処理もできるんだろうな!

3. isEmpty()メソッド

isEmpty()メソッドは、文字列が空(長さが0)であるかどうかを確認するメソッドです。

これは特に、ユーザからの入力が空でないか、ファイルの読み込み内容が空でないかなど、チェックを行いたい場合に非常に役立ちます。

ソースコード例

 出力結果
false true 
サルモリ
空の文字列かどうかをサクッと確認できるのは便利だね!

4. valueOf()メソッド

valueOf()メソッドは、他のデータタイプ(int, char, doubleなど)を文字列として取得するためのメソッドです。

ログメッセージの作成や、他のデータタイプを文字列として連結したいときなどに使用します。

ソースコード例

 出力結果
12345 
サルモリ
あれれ、数字が文字列になって表示されてる!色々なタイプを文字列に変換できるのは、ログ作成時とかに重宝しそうだね!

5. codePointAt()メソッド

codePointAt()メソッドは、指定されたインデックスのコードポイント(Unicodeコードユニット)を返すメソッドです。

これは特定の文字が何の文字であるかをUnicodeで判断したいときなどに使います。

ソースコード例

 出力結果
12371 
サルモリ
Unicodeで「こ」の文字が12371なんだね。言語ごとの文字を正確に把握できるのは、国際化されたアプリを作る時に大事だね!

6. codePointBefore()メソッド

codePointBefore()メソッドは、指定されたインデックスの直前の文字のUnicodeコードポイントを取得するメソッドです。これは文字列内の特定の位置にある文字のUnicode値を確認するのに利用します。特にテキストのエンコーディングやデコーディング、文字コードのチェックなどを行う際に活用できます。

ソースコード例

 出力結果
72 

このコードでは、codePointBefore(1)を用いて、インデックス1(1番目の文字)の直前、つまり最初の文字('H')のUnicodeコードポイントを取得しています。出力される"72"は、文字'H'のUnicodeコードポイントを示しています。

サルモリ
「H」のUnicodeが72なんだね。直前のコードポイントを知りたいときに使えそう!

8. codePointCount()メソッド

codePointCount()メソッドは、指定された範囲にあるUnicodeコードポイントの数を返すメソッドです。このメソッドは特に、サロゲートペア(通常よりも多くのビットを使ってエンコードされた文字)を正確にカウントする際に有用です。サロゲートペアを使ってエンコードされた文字は、通常2つのchar値を消費します。従って、length()メソッドとcodePointCount()メソッドが返す値は、サロゲートペアが文字列に含まれる場合、異なる可能性があります。

ソースコード例

 出力結果
Length: 5 Code point count: 4 

このコードの実行結果では、length()メソッドが5を返すのに対して、codePointCount()メソッドは4を返します。なぜなら、𐐷はサロゲートペアとして表現され、2つのchar値を消費するためです。これがcodePointCount()メソッドの有用性を如実に示しています。特定の範囲のコードポイントを正確に数える際に、このメソッドを使うことで文字列内のサロゲートペアを正しくカウントすることができます。

サルモリ
なるほど、サロゲートペアが含まれると、length()とcodePointCount()で結果が違うんだね。これは重要なポイントだ!

正確な文字数(コードポイント数)を知りたい場合や、文字列をUnicodeコードポイントとして処理する場合にcodePointCount()メソッドは大変役立ちます。サロゲートペアを扱う際の注意点として、このメソッドを活用することで、多くのUnicode文字に対応したプログラムを構築することができます。

8. まとめ

本記事では、「contains()」、「getBytes()」、「isEmpty()」、「valueOf()」、「codePointAt()」、「codePointBefore()」、「codePointCount()」メソッドについて、それぞれの目的や使用方法をJavaプログラミング言語を用いて解説しました。

これらのメソッドは、文字列の検索、変換、情報取得といった操作を容易かつ効率的に行うためのものであり、日々のコーディング作業をスムーズに進める上で欠かせないものとなります。

各メソッドの用途や特性を理解し、適切な場面で正しく利用することで、コードのパフォーマンスや可読性を向上させ、効率的な開発を実現する手助けとなります。

また、サロゲートペアやエンコーディングに関する知識も深め、多言語対応やユニバーサルなコーディングを目指しましょう。

サルモリ
みんなもよく理解して、それぞれのメソッドをうまく使いこなしてほしいな!

本記事が、Javaでの文字列操作メソッドの利用に関して、少しでも参考になれば幸いです。さまざまなメソッドやテクニックを駆使して、素晴らしいプログラムを作成しましょう!

更に詳しい情報や他のメソッドについても学んでいき、スキルを高めていきましょう。

最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!

サルモリ
最後まで読んでくれてありがとう!!

-Java, Javaのよく使用するメソッド一覧

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock