خانه » LinkedList در جاوا
LinkedList در جاوا
LinkedList در جاوا
آموزش جاوا

LinkedList در جاوا

خب در ادامه‌ی توضیح موضوع لیست‌ها در جاوا، می‌خوام در این پست LinkedList رو توضیح بدم. Linkedlist ها از ۲ قسمت تشکیل شده‌اند، ۱. Value و ۲. Pointer . در قسمت اول مقدار داده‌ی ما قراردارد و در قسمت دوم آدرس خانه‌ی بعدی. به همین علت، دستکاری و حذف داده از یک Linkedlist بسیار سریع‌تر از ArrayList خواهد بود. در صورتی که جایی که تنها نیاز به ذخیره‌سازی اطلاعات داریم، ArrayList گزینه‌ی بهتری هستش.

برای تعریف LinkedList از این دستور استفاده می‌کنیم:

        LinkedList<String> MyLinkedList = new LinkedList<String>();

برای اضافه کردن داده‌ها از  دستور add استفاده می‌کنیم:

        MyLinkedList.add("Soroush");
        MyLinkedList.add("Tayyebi");
        MyLinkedList.add("Soroush2");

برای دسترسی گرفتن به اطلاعات این LinkedList می‌تونیم از Iterator استفاده کنیم:

        Iterator<String> i = MyLinkedList.iterator();
        while (i.hasNext()){
            System.out.println(i.next());
        }

در صورتی که این دستور را اجرا کنیم:

MyLinkedList.add(1,"Salam");

خانه Tayyebi با Salam جایگزین میشه.

توسط این دستور می‌توانیم آیتم‌ها رو پاک کنید:

MyLinkedList.remove(1);

خب یک مثال می‌خوام بزنم براتون. لینک‌لیستی با اسامی شهر‌ها رو در نظر بگیرید. حالا می‌خوام به ترتیب حروف الفبا در این لیست داده اضافه کنم.

import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;

public class LinkedListExample {

    public static void main(String[] args) {

        LinkedList<String> cityOrdered = new LinkedList<String>();
        addInOrder(cityOrdered,"Tehran");
        addInOrder(cityOrdered,"Karaj");
        addInOrder(cityOrdered,"Mazandaran");
        addInOrder(cityOrdered,"Kerman");
        addInOrder(cityOrdered,"Kerman");
        addInOrder(cityOrdered,"Kerman");
        printList(cityOrdered);


    }
    private static  void printList(LinkedList<String> data){
        Iterator<String> i = data.iterator();
        while (i.hasNext()){
            System.out.println("City:"+ i.next());
        }
        System.out.println("================");
    }
    private static boolean addInOrder(LinkedList<String> myList, String newCity){
        ListIterator<String> i = myList.listIterator();
        while (i.hasNext()){
            int comparison = i.next().compareTo(newCity);
            if(comparison  == 0){
                System.out.println("Already Exist!");
                return false;
            } else if(comparison > 0){
                i.previous(); // چون از دستور next استفاده کرده بودیم، باید یک خانه به قبلی برگردیم.
                i.add(newCity);
                return true;
            }else{
                //
            }
        }
        i.add(newCity);
        return true;

    }

}

توسط دستور زیر می‌تونید اولین خانه اطلاعات را بگیرید:

cityOrdered.getFirst();

دستور زیر چک می‌کنه که لیست خالی هستش یا خیر:

cityOrdered.isEmpty()

 

توضیحات کوتاه
LinkedList در جاوا
نام مقاله
LinkedList در جاوا
خلاصه
در ادامه‌ی توضیح موضوع لیست‌ها در جاوا، می‌خوام در این پست LinkedList رو توضیح بدم. Linkedlist ها از ۲ قسمت تشکیل شده‌اند، ۱. Value و ۲. Pointer . در قسمت اول مقدار داده‌ی ما قراردارد و در قسمت دوم آدرس خانه‌ی بعدی. به همین علت، دستکاری و حذف داده از یک Linkedlist بسیار سریع‌تر از ArrayList خواهد بود. در صورتی که جایی که تنها نیاز به ذخیره‌سازی اطلاعات داریم، ArrayList گزینه‌ی بهتری هستش.
نویسنده
نشر دهنده
سروش طیبی
لوگو نشر دهنده

۱ نظر

برای ارسال نظر اینجا را کلیک کنید