ArrayList - استخدم @override على طريقة toString()

تتطلب قائمة صفيف الكائنات أن يكون الإخراج بالتنسيق المطلوب، لذلك يصبح من الضروري تعديل الطريقة الأصل لفئة الكائن، دون أن ننسى تحديد أن هذه الفئة موروثة مع الكلمة الأساسية  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >@override< / span >.

لدينا فئتان ، النقطة والرئيسية. تحتوي فئة النقاط على سمات 2: x و y. كما ترون ، استخدمنا الكلمة الرئيسية < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >تجاوز< / امتداد>  في الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إلىسلسلة () < / سبان>  في الصف الرئيسي. قمنا أيضا بتخزين مثيلات كائن النقطة في ArrayList ، ثم مررنا عبر ArrayList. يمكنك أن ترى أن الإخراج يأخذ التنسيق المحدد في الطريقة. < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >toString(). يمكنك برمجة هذه الطريقة حسب الحاجة.

public class Point {
private int x;
private int y;

Public Point(int x, int y){
this.x=x;
this.y=y;
}

@Override
سلسلة عامة toString () {
إرجاع "[x = "+this.x+" ، y = "+this.y +"]";
}
}
< / pre> الفئة الرئيسية:

< pre class = "prettyprint lang-java" >import java.util.ArrayList ؛

الفئة العامة الرئيسية {

الفراغ العام الثابت الرئيسي (سلسلة [] args) {
ArrayList< البند> قائمة = قائمة صفيف جديدة< البند> ()
{
ثابت خاص نهائي طويل serialVersionUID = 1L;

@Override
سلسلة عامة toString ()
{
إرجاع super.toString () ؛
}
} ؛
list.add (نقطة جديدة (2 ، 4)) ؛
list.add (نقطة جديدة (1 ، 6)) ؛
list.add (نقطة جديدة (5 ، 2)) ؛
list.add (نقطة جديدة (3 ، 7)) ؛
list.add (نقطة جديدة (8 ، 9)) ؛

System.out.println(list.toString());
}
}
Run:

[[x= 2, y= 4], [x= 1, y= 6], [x= 5, y= 2], [x= 3, y= 7], [x= 8, y= 9]]
في هذا المثال، تستخدم ArrayList الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إلىسلسلة () < / سبان>  أعلن في فئة النقطة. إذا أزلنا الطريقة  < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إلىسلسلة () < / سبان>  في فئة النقاط ، سيكون لدينا التنسيق التالي:

< pre class = "prettyprint lang-java" > [Point@4a5f634c ، Point@3c7038b9 ، Point@6b9c18ae ، Point@55187eb3 ، Point@3b26456a]< / pre>< / div>