文字列の比較

文字列が等しいかどうかを調べるにはequalsメソッドを使います。等値演算子 == は2つの文字列が同一のオブジェクトを指すかどうかを判定するので、文字列の内容の比較には適しません。 たとえば、次のプログラムは、文字列の比較を行います。

import java.util.Scanner;

class Main{
    public static void main(String[] args){
	Scanner sc = new Scanner(System.in);
	String str1 = sc.next();               // "abc"
	String str2 = sc.next();               // "abc"
	String str3 = sc.next();               // "xyz"
	System.out.println(str1.equals(str2)); // true
	System.out.println(str1.equals(str3)); // false
	System.out.println(str1 == str1);      // true
	System.out.println(str1 == str2);      // false
    }
}

たとえば、上のプログラムに"abc"、"abc"、"xyz"をこの順番に入力すると、以下の出力が得られます。

true
false
true
flase

Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。