{"id":9475,"date":"2025-05-07T15:31:51","date_gmt":"2025-05-07T14:31:51","guid":{"rendered":"https:\/\/solidt.eu\/site\/?p=9475"},"modified":"2025-05-07T15:31:52","modified_gmt":"2025-05-07T14:31:52","slug":"c-objectarraycomparer","status":"publish","type":"post","link":"https:\/\/solidt.eu\/site\/c-objectarraycomparer\/","title":{"rendered":"C# ObjectArrayComparer"},"content":{"rendered":"\n<div style=\"height: 250px; position:relative; margin-bottom: 50px;\" class=\"wp-block-simple-code-block-ace\"><pre class=\"wp-block-simple-code-block-ace\" style=\"position:absolute;top:0;right:0;bottom:0;left:0\" data-mode=\"csharp\" data-theme=\"monokai\" data-fontsize=\"14\" data-lines=\"Infinity\" data-showlines=\"true\" data-copy=\"false\">public class ObjectArrayComparer : IComparer&lt;object[]>\n{\n\tpublic int Compare(object[] x, object[] y)\n\t{\n\t\tif (ReferenceEquals(x, y)) return 0;\n\t\tif (x is null) return -1;\n\t\tif (y is null) return 1;\n\n\t\tfor (int i = 0; i &lt; Math.Min(x.Length, y.Length); i++)\n\t\t{\n\t\t\tvar a = x[i];\n\t\t\tvar b = y[i];\n\n\t\t\tif (ReferenceEquals(a, b)) continue;\n\t\t\tif (a is null) return -1;\n\t\t\tif (b is null) return 1;\n\n\t\t\tif (a.GetType() == b.GetType())\n\t\t\t{\n\t\t\t\tvar cmp = Comparer.DefaultInvariant.Compare(a, b);\n\t\t\t\tif (cmp != 0) return cmp;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tvar cmp = string.Compare(Convert.ToString(a, CultureInfo.InvariantCulture),\n\t\t\t\t\t\t\t\t\t\t Convert.ToString(b, CultureInfo.InvariantCulture),\n\t\t\t\t\t\t\t\t\t\t StringComparison.Ordinal);\n\t\t\t\tif (cmp != 0) return cmp;\n\t\t\t}\n\t\t}\n\n\t\treturn x.Length.CompareTo(y.Length);\n\t}\n}<\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-9475","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/posts\/9475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/comments?post=9475"}],"version-history":[{"count":1,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/posts\/9475\/revisions"}],"predecessor-version":[{"id":9476,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/posts\/9475\/revisions\/9476"}],"wp:attachment":[{"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/media?parent=9475"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/categories?post=9475"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/solidt.eu\/site\/wp-json\/wp\/v2\/tags?post=9475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}