Java 文字列の値を比較するサンプル(equals)

Javaの文字列の値を比較するサンプルです。
Stringクラスのequalsメソッドを使用します。

目次

equalsメソッド

public  boolean  equals (Object anObject)

コード

equalsメソッドのサンプルです。
15行目は、Stringオブジェクトどうしでかつ同じ値のためtrueになります。
22行目は、値が異なるためfalseになります。
29行目は、同じ値だが、文字列と数値のためfalseになります。
36行目は、参照先が異なるのでfalseになります。
43行目は、文字列と数値をイコールで比較しているのでコンパイルエラーになります。

package test1;
 
/**
 * equalsメソッド
 */
public class Test1 {
	public static void main(String[] args) {
		String a = new String("あいうえお");
		String b = new String("あいうえお");
		String c = new String("かきくけこ");
		String d = "1";
		int e = 1;

		// Stringオブジェクトどうしでかつ同じ値のためtrueになる
		if (a.equals(b)) {
			System.out.println("OK"); // OKが出力される
		} else {
			System.out.println("NG");
		}
		
		// 値が異なるためfalseになる
		if (a.equals(c)) {
			System.out.println("OK"); 
		} else {
			System.out.println("NG"); // NGが出力される
		}
		
		// 同じ値だが、文字列と数値のためfalseになる
		if (d.equals(e)) {
			System.out.println("OK");
		} else {
			System.out.println("NG"); // NGが出力される
		}
		
		// 参照先が異なっているのでfalseになる
		if (a == b) {
			System.out.println("OK");
		} else {
			System.out.println("NG"); // NGが出力される
		}
		
		// 文字列と数値をイコールで比較しているのでコンパイルエラー
//		if (d == e) {
//			System.out.println("OK");
//		} else {
//			System.out.println("NG");
//		}
	}
}

equalsIgnoreCaseメソッド(大文字と小文字を区別しない)

public  boolean  equalsIgnoreCase (String  anotherString)

コード

equalsIgnoreCaseメソッドのサンプルです。
11行目は、equalsIgnoreCaseメソッドで大文字と小文字の値を比較してtrueを返しています。
14行目は、equalsメソッドで大文字と小文字の値を比較してfalseを返しています。

package test1;
/**
 * equalsIgnoreCaseメソッド
 */
public class Test1 {
	public static void main(String[] args) {
		String a = new String("ABC");
		String b = new String("abc");

		// 大文字と小文字の比較でtrueになる
		System.out.println(a.equalsIgnoreCase(b)); //true

		// 大文字と小文字の比較でfalseになる
		System.out.println(a.equals(b)); //false
	}
}

関連の記事

Java 文字列から文字列の一部を取得するサンプル(substring)
Java 文字列の長さを取得するサンプル(length)
Java 文字列の先頭と末尾の空白を取り除くサンプル(trim)
Java 文字列を置き換えるサンプル(replace)
Java 大文字と小文字を変換するサンプル(toLowerCaseとtoUpperCase)
Java 文字列を分割するサンプル(split)
Java 文字の位置を取得するサンプル(indexOfとlastIndexOf)
Java 文字列の始め/終わりを確認するサンプル(startsWithとendsWith)
Java 文字列が空か確認するサンプル(isEmpty)
Java  equalsメソッドで比較する値がnullまたは空文字だった場合のサンプル

△上に戻る