لينكد ليست في جافا
<ب>لينكد ليستب> هو تنفيذ للواجهة java.util.List شوهد في ArrayList و Vector< / a>. يمثل LinkedList قائمة مرتبطة في java.تدعم فئة LinkedList منشئين:
< pre class = "prettyprint lang-java" > LinkedList ()
< / pre>ينشئ هذا المنشئ LinkedList.
< pre class = "prettyprint lang-java" >LinkedList (Collection c)
< / pre>يقوم هذا المنشئ بإنشاء LinkedList مهيأ مع مجموعة من data.
طرق فئة LindekList
1) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل إضافة (كائن o) < / span>: يضيف عنصرا إلى القائمة.
< pre class = "prettyprint lang-java" >list. لاد ("مرحبا") ؛
< / pre>2) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل إضافة (فهرس int ، كائن o) < / span > : يضيف عنصرا إلى موضع محدد.
< pre class = "prettyprint lang-java">list.add (3 ، "position3") ؛
< / pre>3) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >void addAll(Collection c): إضافة عناصر من مجموعة بيانات أخرى مثل ArrayList. يلقي استثناء. < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >NullPointerException < / span > إذا كانت المجموعة فارغة < / >
< pre class = "prettyprint lang-java" >LinkedList linkedlist = LinkedList () جديد ؛
ArrayList arraylist = ArrayList() الجديدة ؛
arraylist.add("123");
arraylist.add("456");
linkedlist.addAll(arraylist);
< / سلسلة >< / سلسلة >< / سلسلة >< / سلسلة >< / قبل >4) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >void addAll(int index, Collection c) : إضافة عناصر من مجموعة بيانات أخرى مثل ArrayList بدءا من موضع معين. يلقي استثناء. < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >NullPointerException < / span > إذا كانت المجموعة صفرا و < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إندكس أوتوفباوندزاستثناءسبان> إذا تجاوزت سعة السعة .
< pre class = "prettyprint lang-java" >linkedlist.addAll (3 ، arraylist). < / سلسلة >< / pre>5) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل واضح (): < / span> يمسح محتويات القائمة.
: يتحقق مما إذا كان الكائن موجودا في القائمة. إذا كان العنصر موجودا ، فإنه يرجع true خلاف ذلك false.
< pre class = "prettyprint lang-java" >list. لاد ("مرحبا") ؛
< / pre>2) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل إضافة (فهرس int ، كائن o) < / span > : يضيف عنصرا إلى موضع محدد.
< pre class = "prettyprint lang-java">list.add (3 ، "position3") ؛
< / pre>3) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >void addAll(Collection c): إضافة عناصر من مجموعة بيانات أخرى مثل ArrayList. يلقي استثناء. < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >NullPointerException < / span > إذا كانت المجموعة فارغة < / >
< pre class = "prettyprint lang-java" >LinkedList
ArrayList
arraylist.add("123");
arraylist.add("456");
linkedlist.addAll(arraylist);
< / سلسلة >< / سلسلة >< / سلسلة >< / سلسلة >< / قبل >4) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >void addAll(int index, Collection c)
< pre class = "prettyprint lang-java" >
list.clear();
< / ما قبل >6) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >استنساخ الكائن () < / span >: إرجاع نسخة من list.System.out.println ("linkedList: "+ list);
Object str = list.clone();
System.out.println("str: "+str);
< / pre> الإخراج:
< pre class = "prettyprint lang-java" >linkedList: [object1 ، object2 ، object3]
str: [object1 ، object2 ، object3]
< / pre>7) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >boolean يحتوي على (الكائن o)
boolean var = list.contains("String");
< / pre>8) < span style = "عائلة الخط: يرث؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >Object get(int index): إرجاع العنصر إلى الفهرس المحدد.Object elt = llist.getLast(); < / قبل >9) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >int indexOf(Object o): إرجاع فهرس كائن معين.int pos = llist.indexOf("o2"); < / pre>10) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >int lastIndexOf(Object o): إرجاع فهرس آخر ظهور لكائن معين.int lastpos = llist.lastIndexOf("o6"); < / pre>11) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إزالة الكائن (int indice) < / span>: يحذف كائنا بالفهرس المحدد.llist.remove(4); < / pre>12) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >إزالة الكائن (الكائن o) < / span >: يزيل كائنا معينا من القائمة.llist.remove("o6"); < / قبل >13) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >الكائن removeFirstOccurrence(Object o): يحذف التكرار الأول الذي تمت مواجهته.llist.removeFirstOccurrence("hello"); < / pre>14) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >كائن removeLastOccurrence(Object o): يحذف آخر ظهور تمت مواجهته.llist.removeLastOccurrence("hello"); < / pre>15) < span style = "عائلة الخط: وراثة ؛" > < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >مجموعة الكائنات (int indice، الكائن o): تغيير قيمة عنصر إلى فهرس معين.llist.set(llist.sise()-1، "مساء الخير")؛ < / قبل > ضع "مساء الخير" في الموضع الأخير من القائمة ، وضعنا "-1" حتى لا يتجاوز حجم القائمة.
16) < / span >< span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >حجم int ()< / الامتداد> ؛ إرجاع الحجم الحالي أو العدد الإجمالي للكائنات في القائمة.llist.size(); < / pre>طرق خاصة ب LinkedList
1) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل addFirst (الكائن o) < / span>: يدرج عنصرا في الموضع الأول.< / div>
< / div>list.addFirst ("string") ؛2) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل addLast (الكائن o) < / span>: يدرج عنصرا في الموضع الأخير.
< pre class = "prettyprint lang-java" >list.addLast ("سلسلة") ؛ < / قبل >< / شعبة ><شعبة >3) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >Object getFirst(): إرجاع العنصر إلى الموضع الأول.Object elt = llist.getFirst(); < / قبل >4) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >Object getLast(): إرجاع العنصر إلى الموضع الأخير.list.addFirst("string");
< / قبل >5) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" > void removeFirst(): يزيل العنصر من الموضع الأول.list.removeFirst(); < / قبل >6) < span style = "عائلة الخط:" ساعي جديد" , " ساعي" ، حافلة صغيرة؛" >باطل removeLast(): يزيل العنصر من الموضع الأخير.list.removeLast(); < / pre>LinkedList example< / h2 >
يوضح هذا المثال بعض الطرق الأكثر شيوعا التي يدعمها LinkedList:
< pre class = "prettyprint lang-java" > حزمة LinkedList ؛
import java.util.*;
من الفئة العامة LinkedListDemo {
الفراغ العام الثابت الرئيسي (سلسلة args []) {
// إعلان القائمة المرتبطة
LinkedListll = LinkedList () الجديدة
// املأ العناصر في القائمة المرتبطة
ll.add("C")؛
ll.add("D");
ll.add("T");
ll.add("V");
ll.addFirst("A")؛
ll.addLast("Z");
ll.add(1, "B");
System.out.println ("المحتوى الأصلي: " + ll);
// إزالة عناصر من القائمة المرتبطة
ll.remove("F");
ll.remove(2);
ll.removeFirst();
System.out.println("بعد الحذف: "
+ ll);
// تغيير قيمة الكائن إلى 3
السلسلة الأولى = ll.getFirst ();
int index = ll.indexOf (الأول) ؛
ll.set (الفهرس، الأول + "جديد")؛
System.out.println ("بعد التعديل: " + ll);
}
}
< / string >< / string >< / pre> الإخراج:
< pre class = "prettyprint lang-java" >المحتوى الأصلي: [A ، B ، C ، D ، T ، V ، Z]
بعد الحذف: [B ، D ، T ، V ، Z]
بعد التعديل: [B جديد ، D, T, V, Z]
المراجع:
Javadoc: LinkedList
Tutorialspoint: LinkedList class
upmf-غرونوبل: LinkedList