{"id":9145,"date":"2025-01-10T06:15:12","date_gmt":"2025-01-10T03:15:12","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/"},"modified":"2025-01-10T06:15:12","modified_gmt":"2025-01-10T03:15:12","slug":"java-comparator-ve-comparable-karsilastirma-ve-ornekler","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/","title":{"rendered":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler"},"content":{"rendered":"<p>Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler<\/p>\n<p>Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java&#8217;da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, <code>Comparable<\/code> ve <code>Comparator<\/code> aray\u00fczlerinden bahsedece\u011fim.  Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar.  \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r.  \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java&#8217;da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h2>Comparable Aray\u00fcz\u00fc<\/h2>\n<p><code>Comparable<\/code> aray\u00fcz\u00fc, bir s\u0131n\u0131f\u0131n kendi i\u00e7inde nas\u0131l kar\u015f\u0131la\u015ft\u0131r\u0131laca\u011f\u0131n\u0131 tan\u0131mlar. Ba\u015fka bir deyi\u015fle, bir s\u0131n\u0131f\u0131n kendi \u00fcyelerini kullanarak nas\u0131l s\u0131ralanaca\u011f\u0131n\u0131 belirler.  Bu aray\u00fcz\u00fc uygulayan bir s\u0131n\u0131f, <code>compareTo()<\/code> metodunu uygulamak zorundad\u0131r.  Bu metot, iki nesneyi kar\u015f\u0131la\u015ft\u0131rarak bir tamsay\u0131 de\u011feri d\u00f6nd\u00fcr\u00fcr:  0 (e\u015fit), negatif (ilk nesne k\u00fc\u00e7\u00fck), pozitif (ilk nesne b\u00fcy\u00fck).  <code>Comparable<\/code> aray\u00fcz\u00fc, tek bir s\u0131ralama kriteri tan\u0131mlar.  \u00d6rne\u011fin, bir <code>Person<\/code> s\u0131n\u0131f\u0131n\u0131 isim veya ya\u015fa g\u00f6re s\u0131ralamak isterseniz, her bir kriter i\u00e7in ayr\u0131 <code>Comparable<\/code> uygulamas\u0131 yazman\u0131z gerekir.  Bu durum, esneklikten \u00f6d\u00fcn vermenize neden olur. <\/p>\n<pre><code class=\"java\">\npublic class Person implements Comparable&lt;Person&gt; {\n    private String name;\n    private int age;\n\n    \/\/ ... constructor ...\n\n    @Override\n    public int compareTo(Person other) {\n        return this.name.compareTo(other.name); \/\/ \u0130sme g\u00f6re s\u0131ralama\n    }\n}\n<\/code><\/pre>\n<h2>Comparator Aray\u00fcz\u00fc<\/h2>\n<p><code>Comparator<\/code> aray\u00fcz\u00fc ise, bir s\u0131n\u0131f\u0131n nas\u0131l kar\u015f\u0131la\u015ft\u0131r\u0131laca\u011f\u0131n\u0131 *d\u0131\u015far\u0131dan* belirlemenizi sa\u011flar.  Bir ba\u015fka deyi\u015fle, s\u0131n\u0131f\u0131n kendi yap\u0131s\u0131na m\u00fcdahale etmeden, farkl\u0131 s\u0131ralama kriterleri tan\u0131mlayabilirsiniz. Bu aray\u00fcz\u00fc uygulayan bir s\u0131n\u0131f, <code>compare()<\/code> metodunu uygulamal\u0131d\u0131r. Bu metot, iki nesneyi al\u0131r ve <code>Comparable<\/code> aray\u00fcz\u00fcndeki <code>compareTo()<\/code> metodu ile ayn\u0131 mant\u0131\u011fa g\u00f6re bir tamsay\u0131 de\u011feri d\u00f6nd\u00fcr\u00fcr.  <code>Comparator<\/code> aray\u00fcz\u00fc, \u00e7oklu s\u0131ralama kriterleri tan\u0131mlamada daha esnektir ve s\u0131n\u0131f yap\u0131s\u0131n\u0131 de\u011fi\u015ftirmeden farkl\u0131 s\u0131ralama mant\u0131klar\u0131 kullanmaya olanak sa\u011flar. Bu esneklik sayesinde, ayn\u0131 veri setini farkl\u0131 \u015fekillerde s\u0131ralayabilirsiniz.  \u00d6rne\u011fin;  ayn\u0131  <code>Person<\/code> s\u0131n\u0131f\u0131n\u0131 hem isme hem de ya\u015fa g\u00f6re farkl\u0131 <code>Comparator<\/code>&#8216;lar kullanarak s\u0131ralayabilirsiniz.<\/p>\n<pre><code class=\"java\">\npublic class PersonComparator implements Comparator&lt;Person&gt; {\n    @Override\n    public int compare(Person p1, Person p2) {\n        return Integer.compare(p1.getAge(), p2.getAge()); \/\/ Ya\u015fa g\u00f6re s\u0131ralama\n    }\n}\n<\/code><\/pre>\n<h2>Comparable ve Comparator Aras\u0131ndaki Farklar<\/h2>\n<p>\u00d6zetle,  <code>Comparable<\/code> s\u0131n\u0131f\u0131n kendi i\u00e7 yap\u0131s\u0131n\u0131 kullanarak s\u0131ralama sa\u011flar,  <code>Comparator<\/code> ise d\u0131\u015far\u0131dan bir s\u0131ralama mant\u0131\u011f\u0131 tan\u0131mlar.  <code>Comparator<\/code>, birden fazla s\u0131ralama kriteri tan\u0131mlamak i\u00e7in daha esnek bir \u00e7\u00f6z\u00fcm sunar.  Hangi aray\u00fcz\u00fc kullanaca\u011f\u0131n\u0131z, ihtiyaca ba\u011fl\u0131 olarak de\u011fi\u015fir.  E\u011fer s\u0131n\u0131f\u0131n\u0131z\u0131n tek bir do\u011fal s\u0131ralama d\u00fczeni varsa, <code>Comparable<\/code> kullanabilirsiniz. Ancak, birden \u00e7ok s\u0131ralama kriterine ihtiyac\u0131n\u0131z varsa, <code>Comparator<\/code> aray\u00fcz\u00fcn\u00fc kullanman\u0131z daha uygun olacakt\u0131r.  Bu yakla\u015f\u0131m, kodunuzun daha temiz ve okunabilir olmas\u0131n\u0131 sa\u011flar.<\/p>\n<h2>\u00d6rnek Kullan\u0131m<\/h2>\n<p>\u0130\u015fte, <code>Collections.sort()<\/code> metodunu kullanarak bir <code>List<\/code>&#8216;i <code>Comparable<\/code> ve <code>Comparator<\/code> ile nas\u0131l s\u0131ralayabilece\u011finizi g\u00f6steren bir \u00f6rnek:<\/p>\n<pre><code class=\"java\">\nList&lt;Person&gt; people = new ArrayList&lt;&gt;();\n\/\/ ... Person nesneleri ekle ...\n\nCollections.sort(people); \/\/ Comparable kullanarak s\u0131ralama (isime g\u00f6re)\n\nCollections.sort(people, new PersonComparator()); \/\/ Comparator kullanarak s\u0131ralama (ya\u015fa g\u00f6re)\n<\/code><\/pre>\n<p>Bu \u00f6rnekte,  <code>Collections.sort()<\/code> metodu,  <code>people<\/code> listesini \u00f6nce <code>Comparable<\/code> aray\u00fcz\u00fc (isim) daha sonra <code>Comparator<\/code> aray\u00fcz\u00fc (ya\u015f) ile s\u0131ralar.<\/p>\n<p>Umar\u0131m bu k\u0131lavuz, Java&#8217;da <code>Comparable<\/code> ve <code>Comparator<\/code> aray\u00fczlerini anlaman\u0131za yard\u0131mc\u0131 olmu\u015ftur. Daha fazla bilgi i\u00e7in <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> adresini ziyaret edebilirsiniz.  Ayr\u0131ca, Java dok\u00fcmantasyonuna da g\u00f6z atabilirsiniz. <a href=\"https:\/\/docs.oracle.com\/javase\/tutorial\/collections\/interfaces\/order.html\">Java Collections Documentation<\/a><\/p>\n<p>#Etiketler: Java, Comparator, Comparable, S\u0131ralama, Kar\u015f\u0131la\u015ft\u0131rma, Programlama, Koleksiyonlar, compareTo, compare, Java \u00d6rnekleri,  FatihSoysal<\/p>\n","protected":false},"excerpt":{"rendered":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java&#8217;da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-9145","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler<\/title>\n<meta name=\"description\" content=\"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java&#039;da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java&#039;da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler\" \/>\n<meta property=\"og:description\" content=\"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java&#039;da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java&#039;da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-10T03:15:12+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler\",\"datePublished\":\"2025-01-10T03:15:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\"},\"wordCount\":575,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\",\"name\":\"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-01-10T03:15:12+00:00\",\"description\":\"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java'da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java'da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler","description":"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java'da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java'da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.","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:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/","og_locale":"tr_TR","og_type":"article","og_title":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler","og_description":"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java'da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java'da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.","og_url":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-01-10T03:15:12+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler","datePublished":"2025-01-10T03:15:12+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/"},"wordCount":575,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/","url":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/","name":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-01-10T03:15:12+00:00","description":"Merhaba! Ben Fatih Soysal ve bug\u00fcn sizlerle Java'da nesneleri kar\u015f\u0131la\u015ft\u0131rman\u0131n iki temel yolundan, Comparable ve Comparator aray\u00fczlerinden bahsedece\u011fim. Bu iki aray\u00fcz\u00fc anlamak, koleksiyonlar\u0131 s\u0131ralama gibi i\u015flemleri do\u011fru ve verimli bir \u015fekilde ger\u00e7ekle\u015ftirmenizi sa\u011flar. \u0130ki kavram aras\u0131ndaki fark\u0131 anlad\u0131ktan sonra, koleksiyonlar\u0131n\u0131z\u0131 istedi\u011finiz gibi s\u0131ralamak \u00e7ok daha kolay olacakt\u0131r. \u00d6rneklerle desteklenmi\u015f bu k\u0131lavuz, Java'da kar\u015f\u0131la\u015ft\u0131rma i\u015flemlerini daha iyi anlaman\u0131za yard\u0131mc\u0131 olacakt\u0131r.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/java-comparator-ve-comparable-karsilastirma-ve-ornekler\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Java Comparator ve Comparable: Kar\u015f\u0131la\u015ft\u0131rma ve \u00d6rnekler"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/9145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=9145"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/9145\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=9145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=9145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=9145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}