CodeGym /وبلاگ جاوا /Random-FA /روش compareTo() رشته جاوا
John Squirrels
مرحله
San Francisco

روش compareTo() رشته جاوا

در گروه منتشر شد

روش جاوا String compareTo() چیست؟

اگر هر دو رشته از نظر لغوی با هم برابر باشند، متد compareTo() کلاس رشته جاوا مقدار 0 را برمی‌گرداند. اگر رشته مقایسه شده از نظر واژگانی بزرگتر باشد، مقدار مثبت برگردانده می شود در غیر این صورت مقدار منفی برگردانده می شود. بنابراین از متد compareTo() رشته جاوا برای مقایسه دو رشته استفاده می شود. مقدار یونیکد هر کاراکتر در رشته همیشه توسط این روش برای مقایسه آنها استفاده می شود. هنگام مقایسه رشته ها، اگر هر یک از آنها خالی باشد، همیشه طول رشته را برمی گرداند. اگر هر یک از رشته ها خالی باشد، دو سناریو می توانند اجرا شوند. اگر رشته اول خالی باشد مقدار منفی و در غیر این صورت مقدار مثبت برمی گرداند. متد Java string.compareTo () به طور پیش‌فرض به حروف کوچک و بزرگ حساس است، اما می‌توانیم از متد () compareToIgnoreCase کلاس Java String برای نادیده گرفتن حساسیت حروف بزرگ و کوچک در طول مقایسه استفاده کنیم. این روش همچنین یک عدد صحیح منفی، 0 یا مثبت را همانطور که در بالا توضیح داده شد برمی گرداند.

نحو

public int compareTo(string str)
public int compareTo(object obj)

مولفه های

متد compareTo() رشته جاوا یک رشته یا یک شی را به عنوان پارامتر دریافت می کند که در بالا در نحو مشاهده می کنید.

برمی گرداند

  1. اگر هر دو از نظر واژگانی برابر باشند 0 برمی گرداند.
  2. اگر رشته یا شیء مقایسه شده از نظر واژگانی بزرگتر باشد، عدد صحیح مثبت را برمی گرداند.
  3. اگر یکی از موارد مقایسه شده از نظر لغوی کوچکتر باشد، عدد صحیح منفی را برمی گرداند.

استثناها

متد compareTo () 2 استثنا را برمی گرداند.
  • ClassCastException ، اگر شیء قابل مقایسه نباشد، این استثنا را برمی گرداند.
  • NullPointerException ، اگر رشته null باشد، NullPointerException پرتاب می شود.

مثال های روش compareTo() String جاوا

class Main {
  public static void main(String[] args) {
    // declaring strings to be used in this example for Java string     compareTo() method
    String str = "Java compareTo() method example";
    String str1 = "Java compareTo() method example";
    String str2 = "this is Java compareTo() method example";
    String str3 = "Java CompareTo() Method Example";
    String str4 = "a Java compareTo() method example";
    String str5 = new String("Java compareTo() method example");

    // comparing the str and str1 strings
    System.out.println(str.compareTo(str1));

    // comparing the str and str2 strings
    System.out.println(str.compareTo(str2));

    // comparing the str and str3 strings
    System.out.println(str.compareTo(str3));

    // comparing the str and str4 strings
    System.out.println(str.compareTo(str4));

    // comparing the str string and str5 string object
    System.out.println(str.compareTo(str5));
  }
}

خروجی

0 -42 74 -23 0
همانطور که می دانیم رشته های str و str1 از نظر واژگانی با هم برابر هستند، بنابراین 0 برگردانده شد. در حالی که str و str2 را مقایسه می کنیم، مقدار منفی 42 را برمی گردیم، زیرا رشته مقایسه شده از نظر لغوی کوچکتر است، بنابراین یک منفی است و بر اساس مقدار یونیکد t char و J char است. دارای اختلاف 42 است، بنابراین مقدار -42 برگردانده می شود. برای بقیه می توانید نتایج را برای درک بهتر این روش مشاهده کنید.

نمونه ای از یک رشته خالی

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring an empty string
        String str1="";
        String str2="method";

        System.out.println(str.compareTo(str1));
        System.out.println(str1.compareTo(str2));
    }
}

خروجی

11 -6

مثالی از IgnoreCase

public class Main{
    public static void main(String args[]){
        String str="compareTo()";

        // declaring the same string with uppercase letters
        String str1="COMPARETO()";

        System.out.println(str.compareTo(str1));
        System.out.println(str.compareToIgnoreCase(str1));
    }
}

خروجی

32 0

نتیجه

امیدواریم تا کنون متوجه شده باشید که متد compareTo() رشته جاوا چیست و چگونه آن را برای مقایسه رشته‌ها به همراه موارد کاربری مختلف آن، مانند مقایسه رشته‌های خالی و نادیده گرفتن حساسیت حروف کوچک، پیاده‌سازی کنید. با خیال راحت تمرین کنید و هر زمان که به کمک بیشتری نیاز داشتید برگردید. یادگیری مبارک!
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION