文字と文字列の比較

数値の比較では、>や<などを使って比較することができましたが、文字列の場合は大小を比較することはできません。また、==や!=で等しいかどうかを判定することもできません。文字列の比較では、「equals」メソッドを使用します。

文字と文字列の比較 目次

  1. 文字(char)を比較するには
  2. 文字列(String)を比較するには

1.文字(char)を比較するには

文字(char)は、実際には文字コードという値が格納されていますので、値の大小で比較することができます。

package pac01;

public class HelloWorld {
	public static void main(String[] args) {
		char char1 = 'a';
		char char2 = 'b';
		
		System.out.println(char1 > char2);
		System.out.println(char1 < char2);		
	}
}
---------------------------------------------------------------
false
true

charの比較

2.文字列(String)を比較するには

文字列(String)を比較するには、値の大小ではなく、equalsメソッドを使用します。イコール(=)と言うくらいですので、文字列が等しいかどうかを判定するのに使用します。equalsメソッドは、Stringクラスが保有しているメソッドで、次の様に記述します。

String型変数A.equals(String型変数B)

String型変数に「.equals」を続けます、そして()の中に比較対象のString型変数をそのまま指定します。この計算式は、「String型変数AとString型変数Bが等しいかどうか」という内容になりますので、等しい場合はtrueが、等しくない場合はfalseが返ります。

package pac01;

public class HelloWorld {
	public static void main(String[] args) {
		String strHensu1 = "あ";
		String strHensu2 = "い";
		String strHensu3 = "あ";
		boolean blnEquals = false;
		
		// strHensu1とstrHensu2が等しいか
		blnEquals = strHensu1.equals(strHensu2);		

		System.out.println(blnEquals);
		
		// strHensu1とstrHensu3が等しいか
		blnEquals = strHensu1.equals(strHensu3);
		
		System.out.println(blnEquals);
	}
}
--------------------------------------------------------------
false
true

equalsメソッド

11行目では、”あ”と”い”の文字列が等しいかどうかを比較しています。結果はもちろん等しくないのでfalseになっていることが分かります。16行目は、今度は”あ”と”あ”を比較しているので、結果はtrueになっていることが分かります。

等しいかどうかの判定ですので、比較する方とされる方は逆に書いても同じ結果になります。

コメントを残す

サブコンテンツ

このページの先頭へ