البرمجة

استخدام ArrayList في Java لتخزين وطباعة معلومات الكتب

في هذا السياق، يظهر أنك تحاول إنشاء كائن من الفئة NewClass2 باستخدام قائمة listTest كوسيط. ومع ذلك، يبدو أن لديك فقط بناء فئة NewClass2 الذي يأخذ معاملات فقط، وليس لديك بناء يأخذ قائمة كمعلمة.

لحل هذه المشكلة، يمكنك إما إضافة بناء إضافي لفئة NewClass2 الذي يأخذ قائمة كمعلمة، أو يمكنك تعديل الفئة الحالية لتقبل قائمة كمعلمة. فيما يلي كيفية تحديث الفئة NewClass2 لتقبل قائمة:

java
import java.util.ArrayList; public class NewClass2 { int pages; String released; String title; int isbn; // ... الأساليب الحالية public NewClass2(ArrayList list) { // يمكنك تنفيذ ما تحتاجه هنا، على سبيل المثال، تعيين الخصائص أو غيرها // في هذا المثال، سنقوم بطباعة معلومات الكتب في القائمة for (NewClass2 book : list) { System.out.println("Book Title: " + book.getTitle()); System.out.println("Released Date: " + book.getReleased()); System.out.println("Number of Pages: " + book.getPages()); System.out.println("ISBN: " + book.getIsbn()); System.out.println("------------------------"); } } // باقي الأساليب }

ثم يمكنك استخدامه في الفئة الرئيسية كما في المثال الخاص بك:

java
import java.util.ArrayList; public class mainClass { public static void main(String[] args) { ArrayList listTest = new ArrayList<>(); listTest.add(new NewClass2(200, "Book 1", "8.9.14", 2222)); listTest.add(new NewClass2(200, "Book 2", "1.2.04", 5555)); listTest.add(new NewClass2(200, "Book 3", "5.4.06", 6666)); listTest.add(new NewClass2(200, "Book 4", "7.4.13", 7777)); listTest.add(new NewClass2(200, "Book 5", "2.2.03", 8888)); // قم بإنشاء كائن من NewClass2 بواسطة القائمة NewClass2 bookList = new NewClass2(listTest); } }

بهذا الشكل، يمكنك إنشاء كائن NewClass2 باستخدام القائمة والتي ستقوم بطباعة معلومات الكتب الموجودة في القائمة.

المزيد من المعلومات

في مشروعك الحالي، تقوم بتعريف فئة NewClass2 لتمثيل معلومات الكتب، حيث تحتوي الفئة على متغيرات لعدد الصفحات، تاريخ الإصدار، عنوان الكتاب، ورقم ISBN. تم تنظيم الفئة بشكل صحيح باستخدام أساليب get و set للوصول وتعيين قيم هذه المتغيرات.

من جهة أخرى، في فئة mainClass، قمت بإنشاء قائمة listTest التي تحتوي على عدة كتب من نوع NewClass2. هنا تظهر محاولتك لإنشاء كائن NewClass2 باستخدام هذه القائمة باستخدام البناء التالي:

java
NewClass2 book = new NewClass2(listTest);

ومع ذلك، يتم توقع أن يتم إنشاء كائن NewClass2 باستخدام بناء يأخذ معاملات من نوع int, String, و ArrayList، ولكن البناء الحالي يأخذ معاملات فقط من النوع int, String, و int.

لحل هذا، يمكنك تحديث بناء NewClass2 ليأخذ ArrayList كمعامل، أو يمكنك إنشاء بناء جديد يأخذ هذا النوع من المعاملات.

هذا مثال على كيفية تحديث بناء NewClass2:

java
public NewClass2(ArrayList list) { // يمكنك تنفيذ ما تحتاجه هنا، على سبيل المثال، تعيين الخصائص أو غيرها // في هذا المثال، سنقوم بطباعة معلومات الكتب في القائمة for (NewClass2 book : list) { System.out.println("Book Title: " + book.getTitle()); System.out.println("Released Date: " + book.getReleased()); System.out.println("Number of Pages: " + book.getPages()); System.out.println("ISBN: " + book.getIsbn()); System.out.println("------------------------"); } }

هذا التحديث يسمح لك بإنشاء كائن NewClass2 باستخدام القائمة listTest بشكل صحيح.

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر