Javaで2つの文字列を比較する5つの方法



この記事では、Javaの2つの文字列を適切な例と比較し、文字列操作のさまざまな目的にどのように役立つかを確認します。

文字列操作は、さまざまなドメインで非常に役立ちます。それは役立つかもしれません テキスト分析 、データマッチング、データマイニングなど。この記事では、文字列操作の目的が異なるJavaでの2つの文字列の比較に焦点を当てます。以下は、ここで説明するポインタです。

それでは始めましょう、





初心者向けのビジュアルスタジオチュートリアル

Javaでの2つの文字列の比較

文字のシーケンスは文字列として定義できます。それらは不変です。つまり、一度作成すると変更できません。以下に示すように、Javaで2つの文字列を比較するさまざまな方法があります。

StringEqualsメソッド

文字列は、文字列に存在する値に基づいて比較されます。このメソッドは、2つの文字列の値が同じである場合はtrueを返し、値が一致しない場合はfalseを返します。



public class Main {public static void main(String args []){String str1 = new String( 'Rock')String str2 = new String( 'Roll')String str3 = new String( 'rock')String str4 = new String ( 'Rock')String str5 = new String( 'Roll')//文字列の比較System.out.println( 'Comparing' + str1 + 'and' + str2 + ':' + str1.equals(str2))System .out.println( '比較' + str3 + 'および' + str4 + ':' + str3.equals(str4))System.out.println( '比較' + str4 + 'および' + str5 + ':' + str4.equals(str5))System.out.println( 'Comparing' + str1 + 'and' + str4 + ':' + str1.equals(str4))}}

出力:

ロックンロールの比較:false

ロックとロックの比較:false



ロックンロールの比較:false

RockとRockの比較:true

この記事の2番目のビットを続けましょう。

文字列は大文字と小文字を区別しない

このメソッドは2つの文字列を比較し、文字列の大文字と小文字(下位または上位)を考慮しません。値が等しく、nullでない場合はtrueを返します。

public class Main {public static void main(String args []){String str1 = new String( 'Rock')String str2 = new String( 'Roll')String str3 = new String( 'rock')String str4 = new String ( 'Rock')String str5 = new String( 'Roll')//文字列の比較System.out.println( 'Comparing' + str1 + 'and' + str2 + ':' + str1.equalsIgnoreCase(str2))System。 out.println( 'Comparing' + str3 + 'and' + str4 + ':' + str3.equalsIgnoreCase(str4))System.out.println( 'Comparing' + str4 + 'and' + str5 + ':' + str4 .equalsIgnoreCase(str5))System.out.println( 'Comparing' + str1 + 'and' + str4 + ':' + str1.equalsIgnoreCase(str4))}}

出力:

ロックンロールの比較:false

ロックとロックの比較:true

ロックンロールの比較:false

RockとRockの比較:true

Javaの記事で2つの文字列を比較するこの次のビットに進みましょう。

ObjectEqualsメソッド

引数が互いに等しい場合、メソッドはtrueを返し、そうでない場合はfalseを返します。存在する両方の引数がnullの場合、返される出力はtrueです。単一の引数がnull値の場合、返される出力はfalseです。

importjava.util。* public class Main {public static void main(String args []){String str1 = new String( 'Rock')String str2 = new String( 'Roll')String str3 = new String( 'Roll' )String str4 = null String str5 = null System.out.println( 'Comparing' + str1 + 'and' + str2 + ':' + Objects.equals(str1、str2))System.out.println( 'Comparing' + str2 + 'および' + str3 + ':' + Objects.equals(str2、str3))System.out.println( '比較' + str1 + 'および' + str4 + ':' + Objects.equals(str1、str4 ))System.out.println( 'Comparing' + str4 + 'and' + str5 + ':' + Objects.equals(str4、str5))}}

出力:

ロックンロールの比較:false

ロールとロールの比較:true

Rockとnullの比較:false

nullとnullの比較:true

今、さらに進んでみましょう

文字列比較メソッド

この方法では、入力文字列が相互に比較されます。比較後に返される値は次のとおりです。

  • if(str1> str2)の場合、正の値が返されます。
  • (str1 == str2)の場合、0が返されます。
  • If(str1

コード

importjava.util。* public class Main {public static void main(String args []){String str1 = new String( 'Rock')String str2 = new String( 'Pop')String str3 = new String( 'Roll' )String str4 = new String( 'Roll')System.out.println( 'Comparing' + str1 + 'and' + str2 + ':' + str1.compareTo(str2))// String 3 = String 4Systemの比較。 out.println( '比較' + str3 + 'および' + str4 + ':' + str3.compareTo(str4))System.out.println( '比較' + str2 + 'および' + str4 + ':' + str2 .compareTo(str4))}}

出力:

ロックとポップの比較:2

ロールとロールの比較:0

ポップとロールの比較:-2

これで、Javaの記事の2つの文字列を比較する最後のビットになります。

Double EqualTo演算子の使用

この方法では、2つの文字列値を比較する際に回避する必要があります。 equals()演算子と==演算子の主な違いを以下に示します。

  • equals()はメソッドですが、==は演算子です。

  • ==演算子は参照の比較に使用されますが、equals()メソッドはコンテンツの比較に使用されます。

== 演算子は、参照が等しいかどうか、つまり文字列が同じオブジェクトを指しているかどうかをチェックするため、回避されます。

コード

importjava.util。* public class Main {public static void main(String [] args){String str1 = new String( 'Rock')String str2 = new String( 'Rock')System.out.println(str1 == str2)System.out.println(str1.equals(str2))}}

出力:

false

true

この記事で言及されている方法は、Javaのプログラミング言語で2つの文字列を比較するための綿密な方法を提供します。

これで、「Javaのオブジェクトの配列」に関するこの記事は終わりです。詳細を知りたい場合は、 信頼できるオンライン学習会社であるEdurekaによる。 EdurekaのJavaJ2EEおよびSOAトレーニングおよび認定コースは、Hibernate&SpringなどのさまざまなJavaフレームワークに加えて、コアJavaコンセプトと高度なJavaコンセプトの両方についてトレーニングするように設計されています。

Linux用の最高のjavaide

質問がありますか?この記事のコメントセクションにその旨を記載してください。できるだけ早くご連絡いたします。