

{"id":123479,"date":"2024-12-02T18:00:52","date_gmt":"2024-12-02T12:30:52","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=123479"},"modified":"2024-12-02T18:52:36","modified_gmt":"2024-12-02T13:22:36","slug":"java-string-compareto-method","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/","title":{"rendered":"Java String compareTo() Method"},"content":{"rendered":"<p>Strings are a fundamental data type in Java and are widely used in applications for storing and manipulating text. Strings in Java are objects backed by character arrays, making them immutable. Once a string is created, its contents cannot be changed. To &#8220;modify&#8221; a string, a new string object must be created.<\/p>\n<p>Java provides a rich set of methods for manipulating strings. These methods allow you to compare strings, search for substrings, and concatenate strings.<\/p>\n<p>In this article, we will focus on the compareTo() method of the Java String class, which allows you to perform lexicographical comparison of strings.<\/p>\n<h2>Java String compareTo() Method<\/h2>\n<p>The compareTo() method of the Java String class allows you to compare two strings lexicographically, meaning in dictionary order. It returns an integer indicating whether the reference string (the string on which the method is called) is more significant than, equal to, or less than the string argument passed to the process.<\/p>\n<p><strong>Specifically, it returns:<\/strong><\/p>\n<ul>\n<li>A positive number if the reference string is greater than the argument string<\/li>\n<li>0 if the strings are equal<\/li>\n<li>A negative number if the reference string is less than the argument string<\/li>\n<\/ul>\n<p>The comparison is based on the Unicode value of each character in the strings. The method compares the strings character by character, comparing the Unicode values. The first character that doesn&#8217;t match determines the result of the comparison.<\/p>\n<p>For example, &#8220;abc&#8221; is more significant than &#8220;abb&#8221; because the Unicode value of &#8216;c&#8217; is greater than that of &#8216;b&#8217;. &#8220;apple&#8221; is greater than &#8220;apply&#8221; because although the first four characters are equal, &#8216;p&#8217; is greater than &#8216;l&#8217;.<\/p>\n<h3>Variants of Java compareTo() Method<\/h3>\n<p><strong>The String class has three variants of the compareTo() method:<\/strong><\/p>\n<p>1. int compareTo(Object obj)<br \/>\n2. int compareTo(String anotherString)<br \/>\n3. int compareToIgnoreCase(String str)<\/p>\n<h4>int compareTo(Object obj)<\/h4>\n<p>This version of compareTo() expects an Object as a parameter and compares the reference string to the object&#8217;s string representation.<\/p>\n<p><strong>Syntax:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public int compareTo(Object obj)<\/pre>\n<p><strong>Example:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public class CompareStrings {\r\n    public static void main(String[] args) {\r\n        String s1 = \"hello\";\r\n        String s2 = \"hello\";\r\n        String s3 = \"world\";\r\n\r\n        int result1 = s1.compareTo(s2); \/\/ 0 (s1 equals s2)\r\n        int result2 = s1.compareTo(s3); \/\/ -ve (s1 &lt; s3)\r\n\r\n        System.out.println(\"Comparison between s1 and s2: \" + result1);\r\n        System.out.println(\"Comparison between s1 and s3: \" + result2);\r\n    }\r\n}<\/pre>\n<p><strong>Output:<\/strong><br \/>\n<strong>Comparison between s1 and s2:<\/strong> 0<br \/>\n<strong>Comparison between s1 and s3:<\/strong> -15<\/p>\n<p>Here, s1.compareTo(s2) compares the string &#8220;hello&#8221; with string &#8220;hello&#8221; and returns 0 as both are equal.<\/p>\n<p>s1.compareTo(s3) compares &#8220;hello&#8221; with &#8220;world&#8221; and returns a negative number as &#8220;hello&#8221; comes before &#8220;world&#8221; in dictionary order.<\/p>\n<h4>int compareTo(String anotherString)<\/h4>\n<p>This version expects a String object as a parameter and compares the reference string to the string passed as a parameter.<\/p>\n<p><strong>Syntax:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public int compareTo(String anotherString)<\/pre>\n<p><strong>Example:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public class CompareStrings {\r\n    public static void main(String[] args) {\r\n        String s1 = \"hello\";\r\n        String s2 = \"hello\";\r\n        String s3 = \"world\";\r\n\r\n        int result1 = s1.compareTo(s2); \/\/ 0 (s1 equals s2)\r\n        int result2 = s1.compareTo(s3); \/\/ -ve (s1 &lt; s3)\r\n\r\n        System.out.println(\"Comparison between s1 and s2: \" + result1);\r\n        System.out.println(\"Comparison between s1 and s3: \" + result2);\r\n    }\r\n}<\/pre>\n<p><strong>Output:<\/strong><br \/>\n<strong>Comparison between s1 and s2:<\/strong> 0<br \/>\n<strong>Comparison between s1 and s3:<\/strong> -15<\/p>\n<p>The behavior is similar to the compareTo(Object) variant. s1.compareTo(s2) compares &#8220;hello&#8221; and &#8220;hello&#8221; and returns 0. s1.compareTo(s3) compares &#8220;hello&#8221; and &#8220;world&#8221;, finding &#8220;hello&#8221; is lesser and returns a negative value.<\/p>\n<h4>int compareToIgnoreCase(String str)<\/h4>\n<p>This version compares two strings, ignoring case differences.<\/p>\n<p><strong>Syntax:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public int compareToIgnoreCase(String str)<\/pre>\n<p><strong>Example:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">public class CompareStrings {\r\n    public static void main(String[] args) {\r\n        String s1 = \"Hello\";\r\n        String s2 = \"hello\";\r\n\r\n        int result1 = s1.compareTo(s2); \/\/ -ve (s1 &lt; s2)\r\n        int result2 = s1.compareToIgnoreCase(s2); \/\/ 0 (equals with ignore case)\r\n\r\n        System.out.println(\"Comparison between s1 and s2: \" + result1);\r\n        System.out.println(\"Comparison between s1 and s2 (ignore case): \" + result2);\r\n    }\r\n}<\/pre>\n<p><strong>Output:<\/strong><br \/>\n<strong>Comparison between s1 and s2:<\/strong> -32<br \/>\n<strong>Comparison between s1 and s2 (ignore case):<\/strong> 0<\/p>\n<p>Here, s1.compareTo(s2) considers case and finds &#8220;Hello&#8221; is lesser than &#8220;hello&#8221;.<\/p>\n<p>But s1.compareToIgnoreCase(s2) ignores case and finds them equal, returning 0.<\/p>\n<h3>Conclusion<\/h3>\n<p>The Java String compareTo() method is an essential string manipulation tool for lexical comparison of strings. By comparing strings character-by-character based on Unicode value, it returns an integer indicating whether a string is greater than, equal to, or less than another string. The method has variants to compare strings while ignoring case differences.<\/p>\n<p>Mastering compareTo() is key for efficient string sorting, searching, and other text processing tasks in Java programming. With its simplicity and power, compareTo() is a valuable addition to any Java developer&#8217;s toolkit.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Strings are a fundamental data type in Java and are widely used in applications for storing and manipulating text. Strings in Java are objects backed by character arrays, making them immutable. Once a string&#46;&#46;&#46;<\/p>\n","protected":false},"author":86671,"featured_media":134219,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32],"tags":[7345,31142,31145,31078,8152,31144,33203,31143],"class_list":["post-123479","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-java","tag-java-string-compareto-method","tag-java-string-compareto-method-with-examples","tag-java-tutorials","tag-learn-java","tag-string-compareto-method","tag-string-compareto","tag-string-compareto-method-in-java"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Java String compareTo() Method - DataFlair<\/title>\n<meta name=\"description\" content=\"The Java String compareTo() method is an essential string manipulation tool that allows lexical comparison of strings.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java String compareTo() Method - DataFlair\" \/>\n<meta property=\"og:description\" content=\"The Java String compareTo() method is an essential string manipulation tool that allows lexical comparison of strings.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-02T12:30:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-02T13:22:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"TechVidvan Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"TechVidvan Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Java String compareTo() Method - DataFlair","description":"The Java String compareTo() method is an essential string manipulation tool that allows lexical comparison of strings.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/","og_locale":"en_US","og_type":"article","og_title":"Java String compareTo() Method - DataFlair","og_description":"The Java String compareTo() method is an essential string manipulation tool that allows lexical comparison of strings.","og_url":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2024-12-02T12:30:52+00:00","article_modified_time":"2024-12-02T13:22:36+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp","type":"image\/webp"}],"author":"TechVidvan Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"TechVidvan Team","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/"},"author":{"name":"TechVidvan Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/0e594f928e31fc96628ac40f6ae74f49"},"headline":"Java String compareTo() Method","datePublished":"2024-12-02T12:30:52+00:00","dateModified":"2024-12-02T13:22:36+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/"},"wordCount":585,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp","keywords":["Java","java string compareTo() method","java string compareTo() method with examples","java tutorials","Learn Java","string compareTo method","string compareTo()","string compareTo() method in java"],"articleSection":["Java Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/","url":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/","name":"Java String compareTo() Method - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp","datePublished":"2024-12-02T12:30:52+00:00","dateModified":"2024-12-02T13:22:36+00:00","description":"The Java String compareTo() method is an essential string manipulation tool that allows lexical comparison of strings.","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2023\/11\/java-string-compareto.webp","width":1200,"height":628,"caption":"java string compareto()"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/java-string-compareto-method\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Java Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/java\/"},{"@type":"ListItem","position":3,"name":"Java String compareTo() Method"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/0e594f928e31fc96628ac40f6ae74f49","name":"TechVidvan Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c89190da3d4010c71ba476b618ab10fdc2335c82cdfa0ad5002d98d0f2473444?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c89190da3d4010c71ba476b618ab10fdc2335c82cdfa0ad5002d98d0f2473444?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c89190da3d4010c71ba476b618ab10fdc2335c82cdfa0ad5002d98d0f2473444?s=96&d=mm&r=g","caption":"TechVidvan Team"},"description":"TechVidvan Team provides high-quality content &amp; courses on AI, ML, Data Science, Data Engineering, Data Analytics, programming, Python, DSA, Android, Flutter, full stack web dev, MERN, and many latest technology.","url":"https:\/\/data-flair.training\/blogs\/author\/test001\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/123479","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/86671"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=123479"}],"version-history":[{"count":6,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/123479\/revisions"}],"predecessor-version":[{"id":143642,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/123479\/revisions\/143642"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/134219"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=123479"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=123479"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=123479"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}