קטגוריות
C#

טיפ להשוואה בין מחרוזות ב-C#

לעיתים כאשר אנחנו רוצים להשוואת מחרוזות ב-C# אנחנו משתמשים בפונקציה Equals

בעיה שנתקלתי בה לאחרונה היא שגיאת Object reference not set to an instance of an object בקוד בשורה של ההשואה בין מחרוזות באמצעות הפונקציה Equals.

השורה הייתה משהו בסגנון הזה:

myStr.Equals("Test") 

כאשר myStr הוא משתנה מסוג string. הבעיה עם השורה הזאת היא שבמידה ו-myStr מוגדר כ-Null נקבל שגיאה מכיוון ש Equals על משתנה שהוא null נותנת את השגיאה Object reference not set to an instance of an object

לעומת זאת אם נהפוך את ההשוואה, כלומר, נכתוב אותה כך:

"Test".Equals(myStr)

נקבל False ולא שגיאה מכיוון שאין בעיה לעשות השוואה בין מחרוזת ל-null.

שתף:

מאת דוד

דוד כהן, מוביל טכני ומפתח Full Stack מעל 10 שנים.
מפתח בעיקר אתרי אינטרנט ומערכות Web שונות באמצעות node.js, ASP.NET, .NET Core, C#, SQL Server, JavaScript, Angular, jQuery ועוד

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *