5 วิธีในการเปรียบเทียบสองสตริงใน Java



ในบทความนี้เราจะเน้นไปที่การเปรียบเทียบสองสตริงใน Java กับตัวอย่างที่เหมาะสมและดูว่ามันตอบสนองวัตถุประสงค์ที่แตกต่างกันสำหรับการจัดการสตริงอย่างไร

การจัดการสตริงสามารถช่วยได้มากในโดเมนต่างๆ มันอาจช่วยได้ การวิเคราะห์ข้อความ , การจับคู่ข้อมูล, การขุดข้อมูลเป็นต้นในบทความนี้เราจะเน้นไปที่การเปรียบเทียบสองสตริงใน Java ซึ่งมีจุดประสงค์ที่แตกต่างกันอีกครั้งสำหรับการจัดการสตริง ต่อไปนี้เป็นคำแนะนำที่จะกล่าวถึงที่นี่

มาเริ่มกันเลย





การเปรียบเทียบสองสตริงใน Java

ลำดับของอักขระสามารถกำหนดเป็นสตริง ไม่เปลี่ยนรูปนั่นคือไม่สามารถแก้ไขได้เมื่อสร้างขึ้นแล้ว มีหลายวิธีในการเปรียบเทียบสองสตริงใน java ดังที่แสดงด้านล่าง

วิธีการเท่ากับสตริง

สตริงถูกเปรียบเทียบตามค่าที่มีอยู่ในสตริง วิธีนี้จะคืนค่าจริงหากค่าของสตริงทั้งสองเหมือนกันและเป็นเท็จหากค่าไม่ตรงกัน



คลาสสาธารณะ 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 ('เปรียบเทียบ' + str1 + 'และ' + str2 + ':' + str1.equals (str2)) ระบบ .out.println ('เปรียบเทียบ' + str3 + 'และ' + str4 + ':' + str3.equals (str4)) System.out.println ('เปรียบเทียบ' + str4 + 'และ' + str5 + ':' + str4.equals (str5)) System.out.println ('เปรียบเทียบ' + str1 + 'และ' + str4 + ':' + str1.equals (str4))}}

เอาท์พุต:

การเปรียบเทียบ Rock and Roll: เท็จ

การเปรียบเทียบหินกับร็อค: เท็จ



การเปรียบเทียบ Rock and Roll: เท็จ

ความแตกต่างระหว่างเชฟกับหุ่น

การเปรียบเทียบร็อคกับร็อค: จริง

ให้เราดำเนินการต่อในส่วนที่สองของบทความนี้

สตริงเท่ากับละเว้นตัวพิมพ์

วิธีนี้จะเปรียบเทียบสตริงทั้งสองและไม่คำนึงถึงกรณีของสตริง (ต่ำกว่าหรือบน) ส่งคืนจริงหากค่าเท่ากันและไม่เป็นค่าว่าง

คลาสสาธารณะ 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 ('เปรียบเทียบ' + str3 + 'และ' + str4 + ':' + str3.equalsIgnoreCase (str4)) System.out.println ('เปรียบเทียบ' + str4 + 'และ' + str5 + ':' + str4 .equalsIgnoreCase (str5)) System.out.println ('เปรียบเทียบ' + str1 + 'และ' + str4 + ':' + str1.equalsIgnoreCase (str4))}}

เอาท์พุต:

การเปรียบเทียบ Rock and Roll: เท็จ

การเปรียบเทียบร็อคกับร็อค: จริง

การเปรียบเทียบ Rock and Roll: เท็จ

การเปรียบเทียบร็อคกับร็อค: จริง

ให้เราก้าวต่อไปด้วยบิตถัดไปของการเปรียบเทียบสองสตริงในบทความ Java

วิธีการเท่ากับวัตถุ

หากอาร์กิวเมนต์มีค่าเท่ากันเมธอดจะคืนค่าเป็นจริงมิฉะนั้นจะส่งคืนเท็จ หากอาร์กิวเมนต์ทั้งสองมีค่าเป็นโมฆะผลลัพธ์ที่ส่งคืนจะเป็นจริง หากอาร์กิวเมนต์เดียวมีค่าว่างเอาต์พุตที่ส่งคืนจะเป็นเท็จ

นำเข้า java.util * คลาสสาธารณะ Main {public static void main (String args []) {String str1 = new String ('Rock') String str2 = new String ('Roll') String str3 = new String ('Roll' ) สตริง str4 = null สตริง str5 = null System.out.println ('เปรียบเทียบ' + str1 + 'และ' + str2 + ':' + Objects.equals (str1, str2)) System.out.println ('เปรียบเทียบ' + str2 + 'และ' + str3 + ':' + Objects.equals (str2, str3)) System.out.println ('เปรียบเทียบ' + str1 + 'และ' + str4 + ':' + Objects.equals (str1, str4 )) System.out.println ('เปรียบเทียบ' + str4 + 'และ' + str5 + ':' + Objects.equals (str4, str5))}}

เอาท์พุต:

การเปรียบเทียบ Rock and Roll: เท็จ

การเปรียบเทียบโรลแอนด์โรล: จริง

การเปรียบเทียบ Rock กับ null: false

การเปรียบเทียบค่า null และ null: true

ให้เราก้าวไปไกลกว่านี้

สตริงเปรียบเทียบกับวิธีการ

ในวิธีนี้จะเปรียบเทียบสตริงอินพุตซึ่งกันและกัน ค่าที่ส่งคืนหลังการเปรียบเทียบมีดังนี้:

  • ถ้า (str1> str2) ค่าบวกจะถูกส่งกลับ
  • ถ้า (str1 == str2) จะส่งคืน 0
  • ถ้า (str1

รหัส

นำเข้า java.util * คลาสสาธารณะ Main {public static void main (String args []) {String str1 = new String ('Rock') String str2 = new String ('Pop') String str3 = new String ('Roll' ) สตริง str4 = สตริงใหม่ ('ม้วน') System.out.println ('เปรียบเทียบ' + str1 + 'และ' + str2 + ':' + str1.compareTo (str2)) // การเปรียบเทียบสตริง 3 = ระบบสตริง 4 out.println ('เปรียบเทียบ' + str3 + 'และ' + str4 + ':' + str3.compareTo (str4)) System.out.println ('เปรียบเทียบ' + str2 + 'และ' + str4 + ':' + str2 .compareTo (str4))}}

เอาท์พุต:

tostring () วิธี java

การเปรียบเทียบร็อคและป๊อป: 2

การเปรียบเทียบโรลแอนด์โรล: 0

การเปรียบเทียบ Pop and Roll: -2

สิ่งนี้นำเราไปสู่บิตสุดท้ายของการเปรียบเทียบสองสตริงในบทความ Java

ใช้ Double Equal To Operator

วิธีนี้ควรหลีกเลี่ยงในขณะที่เปรียบเทียบค่าสตริงสองค่า ความแตกต่างที่สำคัญระหว่างตัวดำเนินการ equals () และ == ได้รับด้านล่าง:

  • ในขณะที่ equals () เป็นวิธีการ == เป็นตัวดำเนินการ

  • == ตัวดำเนินการใช้สำหรับการเปรียบเทียบอ้างอิงในขณะที่ในทางกลับกันวิธีการเท่ากับ () ใช้สำหรับการเปรียบเทียบเนื้อหา

== หลีกเลี่ยงตัวดำเนินการเนื่องจากจะตรวจสอบความเท่าเทียมกันของการอ้างอิงนั่นคือสตริงชี้ไปที่วัตถุเดียวกันหรือไม่

รหัส

นำเข้า java.util * คลาสสาธารณะ 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))}}

เอาท์พุต:

เท็จ

วิธีสร้าง int สองเท่าใน java

จริง

วิธีการที่กล่าวถึงในบทความเป็นวิธีที่พิถีพิถันในการเปรียบเทียบสองสตริงในภาษาโปรแกรมของ java

ดังนั้นเราจึงมาถึงตอนท้ายของบทความเรื่อง 'Array Of Objects in Java' หากคุณต้องการเรียนรู้เพิ่มเติมโปรดดูไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ หลักสูตรการฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาเพื่อฝึกอบรมคุณสำหรับแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & Spring

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบทความนี้และเราจะติดต่อกลับโดยเร็วที่สุด