"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > Hasvalue أو! = NULL: أيهما أفضل للتحقق من القيم الباطئة في C#؟

Hasvalue أو! = NULL: أيهما أفضل للتحقق من القيم الباطئة في C#؟

نشر في 2025-02-06
تصفح:538

HasValue or != null: Which is Better for Checking Nullable Values in C#?

hasvalue و! = null

] في C#

Nullable نوع C# يسمح قيمًا لاغية ، والتي يمكن أن تكون قيمًا صالحة أو خالية. هناك طريقتان شائعتان للتحقق مما إذا كان قد تم تعيين قيمة لاغية:

nullable.hasvalue

] يشير خاصية

hasvalue من إنه يعيد قيمة منطقية ، صحيح إذا كانت القيمة غير خالية ، وكاذبة إذا كانت القيمة لاغية.

nullable! = null

] هذا التعبير يتحقق أيضًا مما إذا كانت القيمة غير المليئة غير فارغة. يستخدم مشغل علامة متساو لمقارنة القيم الخالية مع NULL.

معادلة في التجميع

] يقوم المترجم بتحسين هذه الشيكات عن طريق استبدال

! = NULL

مقارنة مع مكالمة إلى hasvalue . هذا يعني أنه لا يوجد اختلاف كبير في الأداء أو الوظيفة بين النهجين.

تفضيلات

الاختيار بين

hasvalue

و ! = null يعتمد على قابلية القراءة والتفضيل. يفضل بعض المطورين وضوح hasvalue ، في حين أن البعض الآخر يجد المخزة ! = null أسهل في القراءة.

مثال

int؟ // استخدام Hasvalue إذا (A.Hasvalue) { // ... } // استخدام! = فارغة إذا (a! = null) { // ... }
int? a = null;

// 使用 HasValue
if (a.HasValue)
{
    // ...
}

// 使用 != null
if (a != null)
{
    // ...
}
hasvalue

و ! = NULL كلاهما فعال للتحقق من قيم غير قابلة للإلغاء في C#. يقوم المترجم بتحسين هذه الشيكات للحصول على سلوك مكافئ ، مما يجعل الخيارات مسألة تفضيلات المطور وقابلية قراءة الكود.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3