سؤال

أتوقع أن يكون لديك ما لا يقل عن 183 عنصرا في قائمتي عندما أستعرضها، ولكن في بعض الأحيان النتيجة من نتائج استخراجي في عدد العناصر أقل من 183. منصات بلدي الحالية منصات الصفيف في الحالة أن العد أقل من183.

giveacodicetagpre.

ولكن يبدو أن الحل ليس هو الأفضل.وأود أن أقدر أي حلول أخرى يمكن أن تساعد في ضمان احصل على 183 عنصرا على الأقل كلما حدث المستخلص من فضلك.

هل كانت مفيدة؟

المحلول

فئة قاعدة الصفيف تنفذ تغيير حجم طريقة

giveacodicetagpre.

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

، وأفترض أن لديك مجموعة متنوعات من السلاسل هنا، لذلك يمكنني استخدام خاصية الطول للتحقق من العدد الفعال للعناصر في الصفيف.

نصائح أخرى

ربما اتبع اقتراحات الآخرين، واستخدام قائمة.استخدم منشئ "سعة" لأداء إضافي:

giveacodicetagpre.

بعد ذلك، كلما حصلت على صفيف جديد، قم بذلك (استبدل "" مع أي قيمة تستخدمها للوحة الصفيف):

giveacodicetagpre.

بهذه الطريقة، تكون القائمة دائما إعادة تنظيم نفس الصفيف الداخلي، والحد من المخصصات وضغط GC.

أو، يمكنك استخدام طريقة تمديد:

giveacodicetagpre.

ثم رمز مثل هذا:

giveacodicetagpre.

يصبح هذا:

giveacodicetagpre.

أخيرا، هذه هي الفكرة المرهقة إلى حد ما الذي بدأت في كتابة هذه الإجابة: يمكنك التفاف الصفيف في تطبيق Ilist مضمونا للحصول على 183 فهارس (لقد حذفت معظم تطبيقات الأعضاء في الإيجاز): giveacodicetagpre.

ack.

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

giveacodicetagpre.

إذا اضطررت تماما للعودة إلى صفيف يمكنك استخدام شيء مشابه.

لا أستطيع أن أقول أنني أوصي بهذا الحل، لكنني لن أترك ذلك توقفني عن نشرها!سواء كانوا يحبون أن يعترفوا بذلك أم لا، يحب الجميع حلول لينك!

باستخدام LinQ، مع إعطاء صفيف مع عناصر x في ذلك، يمكنك إنشاء مجموعة مع عناصر y (183 في حالتك) بالضبط في هذا النحو:

giveacodicetagpre.

إذا كان هناك أقل من 183 عنصر، فسيتم تذمر الصفيف بأسلوت فارغة.إذا كان هناك أكثر من 183 عنصر، فسيتم اقتطاع الصفيف.إذا كان هناك بالضبط 183 عنصرا، يتم استخدام الصفيف كما هو.

لا أدعي أن هذا فعال أو أنه فكرة جيدة بالضرورة.ومع ذلك، فإنه يستخدم LinQ (Yippee!) وهو ممتع.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top