5 způsobů porovnání dvou řetězců v Javě



V tomto článku se zaměříme na porovnání dvou řetězců v Javě s vhodnými příklady a uvidíme, jak slouží různým účelům pro manipulaci s řetězci.

Manipulace s řetězci může být nesmírnou pomocí v různých doménách. Může to pomoci textová analytika , porovnávání dat, dolování dat atd. V tomto článku se zaměříme na porovnání dvou řetězců v Javě, které opět mají různé účely pro manipulaci s řetězci. Následují ukazatele, o kterých se zde bude diskutovat

Pojďme tedy začít,





Porovnání dvou řetězců v Javě

Posloupnost znaků lze definovat jako řetězec. Jsou neměnné, tj. Nelze je po vytvoření upravovat. Existují různé metody pro porovnání dvou řetězců v Javě, jak je vidět níže.

Metoda String Equals

Řetězce se porovnávají na základě hodnot obsažených v řetězci. Metoda vrací true, pokud jsou hodnoty dvou řetězců stejné, a false, pokud se hodnoty neshodují.



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') // porovnání řetězců System.out.println ('Comparing' + str1 + 'and' + str2 + ':' + str1.equals (str2)) System .out.println ('Porovnávání' + str3 + 'a' + str4 + ':' + str3.equals (str4)) System.out.println ('Porovnávání' + str4 + 'a' + str5 + ':' + str4.equals (str5)) System.out.println ('Srovnání' + str1 + 'a' + str4 + ':' + str1.equals (str4))}}

Výstup:

Srovnání Rock and Roll: false

Srovnání rocku a rocku: nepravda



Srovnání Rock and Roll: false

Srovnání rocku a rocku: pravda

Pokračujme druhým kouskem tohoto článku,

Řetězec se rovná Ignorovat případ

Tato metoda porovnává dva řetězce a nebere v úvahu případ řetězce (dolní nebo horní). Vrátí true, pokud jsou hodnoty stejné a ne null.

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') // Comparing Strings System.out.println ('Comparing' + str1 + 'and' + str2 + ':' + str1.equalsIgnoreCase (str2)) System. out.println ('Srovnání' + str3 + 'a' + str4 + ':' + str3.equalsIgnoreCase (str4)) System.out.println ('Porovnání' + str4 + 'a' + str5 + ':' + str4 .equalsIgnoreCase (str5)) System.out.println ('Srovnání' + str1 + 'a' + str4 + ':' + str1.equalsIgnoreCase (str4))}}

Výstup:

Srovnání Rock and Roll: false

získejte délku pole javascript

Srovnání rocku a rocku: pravda

Srovnání Rock and Roll: false

Srovnání rocku a rocku: pravda

Pojďme dále s dalším kouskem tohoto porovnání dvou řetězců v článku Java,

Metoda Object Equals

Pokud jsou argumenty navzájem stejné, vrátí metoda hodnotu true, jinak vrátí hodnotu false. Pokud jsou oba přítomné argumenty null, vrácený výstup je true. Pokud má jeden argument hodnotu null, je vrácený výstup false.

import java.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' ) Řetězec str4 = null Řetězec str5 = null System.out.println ('Porovnávání' + str1 + 'a' + str2 + ':' + Objects.equals (str1, str2)) System.out.println ('Porovnávání' + str2 + 'a' + str3 + ':' + Objects.equals (str2, str3)) System.out.println ('Porovnání' + str1 + 'a' + str4 + ':' + Objects.equals (str1, str4 )) System.out.println ('Comparing' + str4 + 'and' + str5 + ':' + Objects.equals (str4, str5))}}

Výstup:

Srovnání Rock and Roll: false

přepsání vs přetížení c ++

Porovnání Roll and Roll: true

Srovnání Rock a null: false

Porovnání null a null: true

Pojďme nyní dále

Porovnání řetězců s metodou

V této metodě jsou vstupní řetězce vzájemně porovnávány. Hodnota vrácená po porovnání je následující:

  • if (str1> str2), je vrácena kladná hodnota.
  • Pokud (str1 == str2), je vrácena 0.
  • Pokud (str1

Kód

import java.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)) // Comparing String 3 = String 4 System. out.println ('Porovnávání' + str3 + 'a' + str4 + ':' + str3.compareTo (str4)) System.out.println ('Porovnávání' + str2 + 'a' + str4 + ':' + str2 .compareTo (str4))}}

Výstup:

Srovnání rocku a popu: 2

Porovnání role a role: 0

Srovnání Pop and Roll: -2

Tím se dostáváme k poslednímu kousku tohoto porovnání dvou řetězců v článku Java,

Používání Double Equal To Operator

Tato metoda by se měla vyhnout při porovnávání dvou řetězcových hodnot. Hlavní rozdíly mezi operátorem equals () a == jsou uvedeny níže:

  • Zatímco equals () je metoda, == je operátor.

  • == operátor se používá pro srovnání referencí, zatímco na druhou stranu se metoda equals () používá pro srovnání obsahu.

== operátor se vyhne, protože kontroluje rovnost odkazů, tj. zda řetězce směřují ke stejnému objektu nebo ne.

Kód

seslat dvojníka na int
import java.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))}}

Výstup:

Nepravdivé

skutečný

Metody uvedené v článku poskytují pečlivý způsob porovnání dvou řetězců v programovacím jazyce Java.

Tak jsme dospěli ke konci tohoto článku o „Array Of Objects in Java“. Pokud se chcete dozvědět více, podívejte se na Edureka, důvěryhodná online vzdělávací společnost. Školicí a certifikační kurz Edureka Java J2EE a SOA je navržen tak, aby vás vyškolil jak pro základní, tak pro pokročilé koncepty Java, spolu s různými rámci Java, jako je Hibernate & Spring.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů tohoto článku a my se vám ozveme co nejdříve.