"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > العنصر - إرجاع المجموعات أو المصفوفات الفارغة بدلاً من القيمة الخالية

العنصر - إرجاع المجموعات أو المصفوفات الفارغة بدلاً من القيمة الخالية

تم النشر بتاريخ 2024-11-06
تصفح:101

Item - Retorne coleções ou arrays vazios, em vez de nulos

لا تُرجع قيمة فارغة:

  • تتطلب الطرق التي تُرجع قيمة فارغة بدلاً من المجموعات أو المصفوفات الفارغة معالجة إضافية للعميل لتجنب الاستثناءات.

مشاكل مع فارغة:

  • يحتاج العملاء إلى إضافة شيكات زائدة (في حالة التحقق من وجود قيمة فارغة).
  • قد تمر عمليات السهو في عمليات التحقق هذه دون أن يلاحظها أحد، مما يؤدي إلى حدوث أخطاء.
  • يجعل من الصعب تنفيذ الطريقة التي تُرجع المجموعة أو المصفوفة.

حجة ضد القيمة الفارغة:

  • لا تقلق بشأن أداء تخصيص المجموعات أو المصفوفات الفارغة إلا إذا ثبت أنها تمثل عنق الزجاجة.

البدائل الفعالة:

  • استخدم مجموعات أو صفائف فارغة بدلاً من فارغة.
  • يمكن إرجاع المجموعات غير القابلة للتغيير بشكل متكرر (على سبيل المثال: Collections.emptyList(), Collections.emptySet()).
  • يمكن أيضًا إرجاع المصفوفات الفارغة بكفاءة.

الأداء الأمثل:

  • استخدم المجموعات الفارغة غير القابلة للتغيير والقابلة لإعادة الاستخدام لتجنب التخصيصات الجديدة غير الضرورية.
  • إرجاع نفس المصفوفة الفارغة بدلاً من إنشاء مصفوفة جديدة في كل مرة

أمثلة الكود:
طريقة غير صحيحة تُرجع قيمة فارغة:

// Exemplo incorreto
public List getCheeses() {
    return cheesesInStock.isEmpty() ? null : new ArrayList(cheesesInStock);
}

معاملة العملاء غير الملائمة:

List cheeses = shop.getCheeses();
if (cheeses != null && !cheeses.isEmpty()) {
    // Lógica para lidar com queijos disponíveis
}

الطريقة الصحيحة لإرجاع مجموعة فارغة:

// Exemplo correto
public List getCheeses() {
    return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock);
}

استخدام مجموعة فارغة غير قابلة للتغيير:

public List getCheeses() {
    return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock);
}

استخدام مع المصفوفات الفارغة:

// Retorno de array vazio corretamente
public Cheese[] getCheeses() {
    return cheesesInStock.toArray(new Cheese[0]);
}

الاستخدام الأمثل للمصفوفة الفارغة:

private static final Cheese[] EMPTY_CHEESE_ARRAY = new Cheese[0];

public Cheese[] getCheeses() {
    return cheesesInStock.toArray(EMPTY_CHEESE_ARRAY);
}

خاتمة:
لا تُرجع أبدًا قيمة فارغة: تفضل دائمًا المجموعات أو المصفوفات الفارغة. يؤدي ذلك إلى تبسيط واجهة برمجة التطبيقات (API)، ومنع الأخطاء، ونادرًا ما يؤثر سلبًا على الأداء.

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/giselecoder/item-54-retorne-colecoes-ou-arrays-vazios-em-vez-de-nulos-1ej6?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ Study_golang @163.com حذف
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3