🌋
【Java】equalsIgnoreCaseメソッド とは (備忘録)
1.はじめに
大文字/小文字を区別せずに文字列が一致しているか判定したい場合、equalsIgnoreCase
メソッドを使用します。
2.サンプルプログラム
〇例1:
Sapmple_1.java
public class Sample_1 {
public static void main(String[] args) {
String upperData = "ABC";
String lowerData = "abc";
if (upperData.equalsIgnoreCase(lowerData)) {
System.out.println("文字列は一致(大文字/小文字の違いは無視)。");
} else {
System.out.println("文字列は不一致(大文字/小文字の違いは無視)。");
}
}
}
実行結果
文字列は一致(大文字/小文字の違いは無視)。
〇例2:文字列にnullが存在する場合
Sapmple_2.java
public class Sample_2 {
public static void main(String[] args) {
String upperData = null;
String lowerData = "abc";
if (upperData.equalsIgnoreCase(lowerData)) {
System.out.println("文字列は一致(大文字/小文字の違いは無視)。");
} else {
System.out.println("文字列は不一致(大文字/小文字の違いは無視)。");
}
}
}
実行結果
ERROR!
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.equalsIgnoreCase(String)" because "<local1>" is null
at Sample_2.main(Main.java:6)
〇例3:nullかどうか判定し、大文字/小文字を区別せずに文字列が一致しているか判定
Sapmple_3.java
public class Sample_3 {
public static void main(String[] args) {
String upperData = null;
String lowerData = "abc";
// nullどうか判定
if (upperData != null) {
if (upperData.equalsIgnoreCase(lowerData)) {
System.out.println("文字列は一致(大文字/小文字の違いは無視)。");
} else {
System.out.println("文字列は不一致(大文字/小文字の違いは無視)。");
}
} else {
System.out.println("文字列がnullのため、一致判定ができません。");
}
}
}
実行結果
文字列がnullのため、一致判定ができません。
〇例4:大文字/小文字を区別せずに入力した文字列が一致しているか判定
Sapmple_4.java
import java.util.Scanner;
public class Sample_4 {
public static void main(String[] args) {
// 標準入力(通常はキーボード)からの入力内容を受け付ける
Scanner scanner = new Scanner(System.in);
System.out.println("任意の文字列を入力してください。");
// キーボードからの入力内容を1行読み取る
String firstData = scanner.nextLine();
System.out.println("再度、同じ文字列を入力してください。");
// キーボードからの入力内容を1行読み取る
String secondData = scanner.nextLine();
// 入力された内容が空文字か判定
if (!firstData.isEmpty() && !secondData.isEmpty()) {
if (firstData.equalsIgnoreCase(secondData)) {
System.out.println("入力された文字列が一致(大文字/小文字の違いは無視)。");
} else {
System.out.println("入力された文字列が不一致(大文字/小文字の違いは無視)。");
}
} else {
System.out.println("入力された文字列が空文字のため、一致判定ができません。");
}
}
}
3.参考
・【Java入門】equalsIgnoreCaseで大文字と小文字を区別せずに比較
・isEmptyメソッド
4.その他
・実行環境
Discussion