مقارنة سلسلة أغراض

مقارنة سلسلة أغراض


مقارنة سلسلة أغراض "String"  لجافا  لتحديد المساواة 

يمكن ان تكون مقارنة سلسلة أغراض "String"  لجافا بطرق عديدة كما هو مبين أدناه. بالإعتمادا على نوع المقارنة لسلسلة جافا الذي تحتاجه ، سنستخدم.

* مشغل ==

* منهج equals

* منهج compareTo

 

مقارنة باستخدام المشغل == 

يستخدم المشغل == عندما يكون لدينا مقارنة مراجع لكائن من نوع سلسلة. إذا يتجه إثنان من متغيرات السلسلة "String variables"  إلى نفس الكائن في الذاكرة ، فالمقارنة تعود بنعم "true". خلاف ذلك، فإن المقارنة ترجع بـ لا "false". علما أن المشغل '==' لا يقارن مضمون هذا النص في سلسلة الكائنات. فإنه يقارن فقط المراجع التي توجهت اليهم السلسلتين. والبرنامج التالي سيقوم بطباعة "The strings are unequal" في الحالة الأولى، و "The strings are equal" في الحالة الثانية.

 

 

مقارنة باستخدام المنهج  equals

يستخدم المنهج  equals عندما نكون في حاجة لمقارنة محتوى النص الموجود في كائنات  سلسلة "String objects". هذا المنهج يقوم بإرجاع صحيحا "true" عندما يكون إثنان من كائنات سلسلة "String objects" يحملان نفس المضمون (أي في نفس القيمة). والبرنامج التالي يقوم بطباعة "The strings are unequal" في الحالة الأولى، و "The strings are equal" في الحالة الثانية.

 

 

 

مقارنة باستخدام المنهج compareTo

يستخدم المنهج compareTo عندما نحتاج لتحديد ترتيب السلاسل حسب الترتيب الأبجدي lexicographically. فإنه يقارن القيمة "char " بنفس الطريقة التي يقوم بها المنهج equals . المنهج  compareTo يقوم بإرجاع عدد صحيح سالب إذا كان الكائن سلسلة الأول يسبق السلسلة الثانية. و يقوم بإرجاع صفر اذا كانت السلسلتين الاتي يجري مقارنتهما متساويتين. يقوم بإرجاع عدد صحيح موجب إذا كان سلسلة كائن الأولى تلي السلسلة الثانية. والبرنامج التالي يقوم بطباعة "name2 follows name1" في الحالة الأولى، و "name1 follows name3" في الحالة الثانية.


<<الدرس السابق                                    الدرس التالي>>