প্রতিটি সক্ষম জাভা প্রোগ্রামার জানে যে আপনাকে স্ট্রিং.ইকুয়ালস () ব্যবহার করতে হবে == এর চেয়ে স্ট্রিং তুলনা করতে হবে কারণ == রেফারেন্সের সমতার জন্য পরীক্ষা করা।
আমি যখন স্ট্রিংয়ের সাথে কাজ করি তখন বেশিরভাগ সময় আমি রেফারেন্স সমতার চেয়ে মান সমতার জন্য যাচাই করি। আমার কাছে মনে হয় যে ভাষাটি যদি কেবল == ব্যবহার করে স্ট্রিংয়ের মানকে তুলনা করার অনুমতি দেয় তবে এটি আরও স্বজ্ঞাত হতে পারে।
তুলনা হিসাবে, সি # 's == অপারেটর স্ট্রিংয়ের জন্য মান সমতার জন্য পরীক্ষা করে । এবং যদি আপনার সত্যিকারের রেফারেন্সের সাম্যতার জন্য যাচাই করা দরকার হয় তবে আপনি স্ট্রিং R রেফারেন্সইকুয়ালস ব্যবহার করতে পারেন।
আর একটি গুরুত্বপূর্ণ বিষয় হ'ল স্ট্রিংস অপরিবর্তনীয়, তাই এই বৈশিষ্ট্যটির অনুমতি দিয়ে কোনও ক্ষতি করার দরকার নেই।
এটি জাভাতে প্রয়োগ করা হয়নি তার কোনও বিশেষ কারণ আছে কি?
==
অপারেটর কেবল মানচিত্র Equals
যদি ==
অপারেটর যে ভাবে বাস্তবায়ন করা হয়। এর জন্য পূর্বনির্ধারিত আচরণটি ==
হ'ল ReferenceEquals
(প্রকৃতপক্ষে, ReferenceEquals
অবজেক্ট সংস্করণ হিসাবে সংজ্ঞায়িত ==
)
==
বস্তুর সমতা এবংeq
রেফারেন্স সমতা ( অফস.রেলি . com / titles / 9780596155957/… )।