اذهب إلى المحتوى
  • 0

جافا - المصفوفات

Shahad Mohammad

السؤال

لدي منتجات ادخلتها ك object  بالجافا مثال  

Products A =new Products("Ipad",4000.500);
Products B =new Products("Appile Pinsil",750.00);
Products C =new Products("earpod",800.00)

وأريد أن اضعها بمصفوفة كيف الطريقة؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

مرحبا شهد،

المصفوفة ( Array ) عبارة عن كائن يحتوي مجموعة عناصر من نفس النوع تتخزن بجوار بعضها في الذاكرة.
بمعنى آخر المصفوفة عبارة عن كائن يمكنه تخزين عدة قيم من نفس النوع.

المشكلة الوحيدة في الـ Array هو أن حجمها ثابت, أي عندما تقوم بتعريف مصفوفة و تحدد عدد عناصرها, لا يمكنك تغيير حجمها لاحقاً, أي لا يمكن حذف عنصر أو زيادة واحد جديد.

لهذا يستحسن إستعمال ArrayList وبعدها تحويله إلى مصفوفة Array باستخدام الدالة toArray:

// نقوم بتعريف كائن ال ArrayList
ArrayList<Products> products_list = new ArrayList<>();
//نقوم بتعريف المننتجات
Products A =new Products("Ipad",4000.500);
Products B =new Products("Appile Pinsil",750.00);
Products C =new Products("earpod",800.00)
//نقوم بإضافة المنتجات إلى ال ArrayList
products_list.add(A);
products_list.add(B);
products_list.add(C);
//نقوم بتعريف المصفوفة
Products[] products_array = new Products[products_list.size()];
//نحول القائمة إلى مصفوفة
products_array.toArray(products_list);

تحياتي،

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 8 دقائق مضت قال مسعود زاهي:

مرحبا شهد،

المصفوفة ( Array ) عبارة عن كائن يحتوي مجموعة عناصر من نفس النوع تتخزن بجوار بعضها في الذاكرة.
بمعنى آخر المصفوفة عبارة عن كائن يمكنه تخزين عدة قيم من نفس النوع.

المشكلة الوحيدة في الـ Array هو أن حجمها ثابت, أي عندما تقوم بتعريف مصفوفة و تحدد عدد عناصرها, لا يمكنك تغيير حجمها لاحقاً, أي لا يمكن حذف عنصر أو زيادة واحد جديد.

لهذا يستحسن إستعمال ArrayList وبعدها تحويله إلى مصفوفة Array باستخدام الدالة toArray:


// نقوم بتعريف كائن ال ArrayList
ArrayList<Product> products_list = new ArrayList<>();
//نقوم بتعريف المننتجات
Products A =new Products("Ipad",4000.500);
Products B =new Products("Appile Pinsil",750.00);
Products C =new Products("earpod",800.00)
//نقوم بإضافة المنتجات إلى ال ArrayList
products_list.add(A);
products_list.add(B);
products_list.add(C);
//نقوم بتعريف المصفوفة
Products[] products_array = new Products[products_list.size()];
//نحول القائمة إلى مصفوفة
products_array.toArray(products_list);

تحياتي،

وضعت نفس الكود لكن يعطيني خطت عند تحويل الى مصفوفة 

 

 

Untitled.png

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 3 دقائق مضت قال Shahad Mohammad:

وضعت نفس الكود لكن يعطيني خطت عند تحويل الى مصفوفة 

نعم كُنت قد أخطأت في كتابة الشيفرة.

الشيفرة الصحيحة هي:

products_list.toArray(products_array);

أي القائمة هي التي نحولها إلى مصفوفة وليس العكس.

بالتوفيق.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 5 دقائق مضت قال مسعود زاهي:

نعم كُنت قد أخطأت في كتابة الشيفرة.

الشيفرة الصحيحة هي:


products_list.toArray(products_array);

أي القائمة هي التي نولها إلى مصفوفة وليس العكس.

بالتوفيق.

المعذرة على كثرةالاسئلة لكن هل يمكنك اخباري ما هو تصحيح الكود لماذا لا يطبع لي المصفوفة اريد طباعتها وشكرا جزيلا 

Untitled.png

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 4 دقائق مضت قال Shahad Mohammad:

المعذرة على كثرةالاسئلة لكن هل يمكنك اخباري ما هو تصحيح الكود لماذا لا يطبع لي المصفوفة اريد طباعتها وشكرا جزيلا 

الشيفرة صحيحة من حيث الكتابة لا يوجد بها أخطاء. حاولي طبع حجم المصفوفة قبل الدخول إلى الحلقة for:

System.out.println(products_array.length);  

والتأكد من أن حجمها أكبر من الصفر.

الطبع يظهر في النافذة Output، ولإظهار هذه النافذة نذهب إلى Window ثم نختار Output.

تحياتي.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...