سلام
واسط IComparable شما یک شی (شی جاری=this) را با یک شی دیگر مقایسه میکند. درواقع دو شی با هم.
به مثال زیر دقت کنید:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در آخرین خط کد فوق دقت کنید...
در این خط مقدار x با y مقایسه میشود که در این خط x همان this است و y همان obj ...
=====
در توابعی مانند Sort در زیرساختش حلقه ای دارد که عناصر را با هم مقایسه و چیدمانشان را تغییر میدهد.
مجدد به خط آخر کد فوق دقت کنید...
نکته مهم آن است که با IComparable شما امکان مقایسه دو نمونه شی را با هم فراهم ساخته اید
یعنی دیگر میتوان هر دو نمونه Class1 را با هم مقایسه کرد...
تابعی مانند Sort هم فقط به همین نیاز دارند، آنها میخواهند دو تا شی را بتوانند با هم مقایسه کنند و سپس با الگوریتم دلخواه خود در حلقه ای چیدمان این عناصر را تغییر دهد.
امیدوارم به جواب هایتان رسیده باشید باز اگر نکته ابهامی بود بفرمائید
موفق باشید.