JavaのequalsIgnoreCaseメソッドを使って大文字と小文字を区別せずに文字列を比較する方法を現役エンジニアが解説【初心者向け】
初心者向けにJavaのequalsIgnoreCaseメソッドを使って大文字と小文字を区別せずに文字列を比較する方法について解説しています。文字列を比較するメソッドのひとつequalsIgnoreCaseメソッドの基本の書き方と実行結果の見かたを覚えましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
JavaのequalsIgnoreCaseメソッドを使って大文字と小文字を区別せずに文字列を比較する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプ、Java講座の内容をもとに作成しています。
今回は、Javaに関する内容だね!
どういう内容でしょうか?
equalsIgnoreCaseメソッドを使って大文字と小文字を区別せずに文字列を比較する方法について詳しく説明していくね!
お願いします!
目次
- equalsIgnoreCaseメソッドとは
- equalsIgnoreCaseメソッドの使い方
- 大文字と小文字を区別せずに文字列を比較する方法
- equalsIgnoreCaseメソッドの注意点
- 実際に書いてみよう
equalsIgnoreCaseメソッドとは
Javaでは文字列を比較するときに、”==”ではなくてメソッドを使います。そのメソッドとして用意されているものの1つがequalsIgnoreCaseメソッドです。
同じく、文字列を比較することのできるメソッドには、equalsメソッドがあります。
equalsメソッドが、大文字や小文字を完全に区別して文字列比較を行なうのに対して、equalsIgnoreCaseメソッドは、大文字と小文字を区別せずに比較することのできるメソッドです。
equalsIgnoreCaseメソッドの使い方
equalsIgnoreCaseメソッドの使い方は。
String型.equalsIgnorecase(比較したい文字列);
のように記述します。
大文字と小文字を区別せずに文字列を比較する方法
上で使い方を紹介したequalsIgnoreCaseメソッドですが、返される値としては真偽値true、falseのいずれかで、String型変数の保持する文字列が比較したい文字列と大文字と小文字の区別なしに一致する場合→true、そうでない場合→falseが返されます。
なので、大文字と小文字を区別せずい比較したい文字列があれば、
String型.equalsIgnorecase(比較したい文字列);
もしくは、String型変数を比較したい場合は、
String型1.equalsIgnorecase(String型2);
のように記述すると良いでしょう。
equalsIgnoreCaseメソッドの注意点
eaualsIgnoreCaseメソッドを使う際の注意点が1つあります。それは、String型がnullの場合はエラーが返されるということです。
つまり、
String str = ""; str.equalsIgnoreCase("abc");
のように、nullを保持するString型変数でequalsIgnoreCaseメソッドを使うことはできないということです。equalsIgnoreCaseメソッドを使う場合はString型が必ずnullではなく、何らかの文字列を保持していることを確認することを心がけましょう。
実際に書いてみよう
それでは、実際にコードを書いて確認してみましょう。
class EqualsIgnoreCaseSample{ public static void main(String args[]){ //BigDecimal型を用意 String str1 = "ABCDE"; //String型に変換したときのための変数 String str2 = "abcde"; //文字列と比較する場合 if(str1.equalsIgnoreCase("abcde")){ System.out.println("文字列と一致しています。"); } //String型と比較する場合 if(str1.equalsIgnoreCase(str2)){ System.out.println("String型と一致しています。"); } //equalsメソッドの場合(falseの場合に実行される) if(!str1.equals("abcde")){ System.out.println("文字列とは大文字と小文字を区別して一致していません。"); } } }
このコードを実行すると
文字列と一致しています。 String型と一致しています。 文字列とは大文字と小文字を区別して一致していません。
と表示されて、大文字と小文字を区別しないで比較することができたことが確認できます。
監修してくれたメンター
メンターOS
AIプログラミングを使って開発を行う。プログラミング歴は約3年。Pythonは割と好きな方。JavaもAndroid開発で触れていたりする。 大学では物理学を勉強中。好きな物理理論は一般相対性理論らしい。 意外と動物が好きだったり、、、。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。