JavaRush /جاوا بلاگ /Random-SD /ڪافي بريڪ #129. LinkedList ۽ ArrayList جي وچ ۾ ڇا فرق آهي...

ڪافي بريڪ #129. LinkedList ۽ ArrayList جي وچ ۾ ڇا فرق آهي؟ جاوا 19 ۾ نئين خاصيتون اچي رهيون آهن

گروپ ۾ شايع ٿيل

LinkedList ۽ ArrayList جي وچ ۾ ڇا فرق آهي؟

ذريعو: Rrtutors.com جيڪڏھن توھان جاوا پروگرامنگ ۾ نوان آھيو، توھان کي ضرور حيران ٿيڻو پوندو ته ڪھڙو استعمال ڪرڻ بھتر آھي جڏھن مجموعن سان ڪم ڪيو وڃي: LinkedList يا ArrayList. اهي ٻئي طبقا هڪجهڙا ڪم ڪن ٿا، تنهن ڪري ڪڏهن ڪڏهن اهو فيصلو ڪرڻ ڏکيو ٿي سگهي ٿو ته توهان جي ڪم ۾ ڪهڙو استعمال ڪرڻ بهتر آهي. هن پوسٽ ۾، اسان ٻن طبقن جي وچ ۾ فرق جي وضاحت ڪنداسين ۽ بحث ڪنداسين ڪٿي ۽ ڪڏهن انهن کي استعمال ڪرڻ لاء. ڪافي بريڪ #129.  LinkedList ۽ ArrayList جي وچ ۾ ڇا فرق آهي؟  جاوا 19 - 1 ۾ نئين خاصيتون اچي رهيون آهن

جاوا ۾ ArrayList ۽ LinkedList جي وچ ۾ فرق

اچو ته مقابلو ڪريون ArrayList ۽ LinkedList انهن جي معيار جي بنياد تي:

هٿرادو

ٻنهي صورتن ۾ صف جي ڦيرڦار جي رفتار ۾ فرق آهي. ArrayList LinkedList جي ڀيٽ ۾ arrays کي ترتيب ڏيڻ لاء سست آهي. اهو حقيقت جي ڪري آهي ته LinkedList نوڊ تي ٻڌل آهي ۽ گهڻو ڪجهه تبديل ڪرڻ جي ضرورت ناهي.

پهچ

ArrayList ذخيرو ۽ ڊيٽا کي تيزيء سان حاصل ڪري ٿو. ٻئي طرف، LinkedList تيز ڊيٽا پروسيسنگ کي سپورٽ ڪري ٿو.

عمل درآمد

ArrayList صرف هڪ فهرست لاڳو ڪري ٿو، جڏهن ته LinkedList هڪ فهرست ۽ قطار ٻنهي کي لاڳو ڪري ٿو. LinkedList پڻ اڪثر ڪري قطار طور استعمال ڪيو ويندو آهي.

اندروني عملدرآمد

هڪ ArrayList ان جي عناصر کي متحرڪ صف ۾ محفوظ ڪري ٿو، جڏهن ته هڪ LinkedList هڪ ٻيڻو ڳنڍيل فهرست استعمال ڪري ٿو.

جڏهن ArrayList ۽ LinkedList استعمال ڪجي؟

ArrayList صرف پڙهڻ واري گڏ ڪرڻ سان ڪم ڪرڻ لاءِ موزون آهي، جڏهن ته LinkedList هڪ مجموعو سان ڪم ڪرڻ لاءِ موزون آهي جيڪا مختلف ڊيٽا ترميمن جي اجازت ڏئي ٿي، جهڙوڪ شامل ڪرڻ ۽ حذف ڪرڻ.

LinkedList مثال:

import java.util.LinkedList;

import java.util.List;

public class LinkeddExample {

    public static void main(String[] args) {

        List<String> myGroup=new LinkedList<>();

        myGroup.add("Pohekar");

        myGroup.add("Sumedh");

        myGroup.add("Nikir");

        System.out.println("Create Group: "+myGroup);

        myGroup.remove("Pohekar");

        System.out.println("Remove Group element: "+myGroup);

        myGroup.set(1,"Niha");

        System.out.println("Modify Group: "+myGroup);

    }

}

ArrayList مثال:

import java.util.ArrayList;

import java.util.List;

public class ArrayListExca {

    public static void main(String[] args) {

        List<String> Pro=new ArrayList<>();

        Pro.add("PythonPro");

        Pro.add("JavaPro");

        Pro.add("C#Pro");



        System.out.println("Traversing ArrayList...");

        for(String s:Pro){

            System.out.println(s);


    }

    }

}

JDK 19: نئين خاصيتون جاوا 19 ۾ اچي رهيون آهن

ذريعو: InfoWorld ورچوئل ٿريڊس، مٽاسٽا جي بيانن لاءِ نمونو ملائڻ، هڪ ویکٹر API، ۽ هڪ Linux/RISC-V پورٽ سڀ اچي رهيا آهن هن سيپٽمبر ۾ جاوا 19 ۾، مختصر مدت جي مدد سان ٻوليءَ جو هڪ نئون رليز. اضافي طور تي، جاوا ڊولپمينٽ کٽ 19 تازو هڪ ٻي خاصيت متعارف ڪرايو: ڊيٽا نيويگيشن ۽ پروسيسنگ لاءِ رڪارڊ نمونن جو جائزو. جاوا ٻولي کي بهتر بڻائڻ جي جاري منصوبي جي حصي جي طور تي، JDK 19، يا صرف جاوا 19، وڏي تعداد ۾ خاصيتون شامل ڪرڻ جي صلاحيت رکي ٿي، جنريڪس کان قيمتي شين تائين. JDK 19 JDK 18 جي ​​پٺيان ايندڙ تازه ڪاري هوندي، 22 مارچ 2022 تي متعارف ڪرايو ويو. جاوا جو معياري نسخو هر ڇهن مهينن ۾ جاري ڪيو ويندو آهي. OpenJDK ڊولپرز شايع ڪيو آهي سرڪاري رليز شيڊول JDK 19 لاءِ. ان جي مطابق، مستحڪم رليز 20 سيپٽمبر تي ظاهر ٿيندي. ان کان اڳ، ڊولپرز پاڻ کي ابتدائي تعميرات سان واقف ڪرڻ جي قابل هوندا، جيڪي 9 جون ۽ 21 جولاء تي جاري ڪيا ويندا. 11 آگسٽ ۽ 25 آگسٽ تي اميدوارن کي رليز ڪيو ويندو. JDK 19 جي ابتدائي رسائي جي تعميرات موجود آهن jdk.java.net/19 . JDK 19 ۾ پيش ڪيل خاصيتون شامل آھن:
  • Предварительный просмотр шаблонов записей для разбора значений записей. Шаблоны записей и шаблоны типов могут быть вложены друг в друга, чтобы обеспечить декларативную, мощную и компонуемую форму навигации и обработки данных. Идея этой функции состоит в том, чтобы добавить расширение сопоставления шаблонов для выражения более сложных составных requestов данных без изменения синтаксиса or семантики шаблонов типов. Это предложение основано на сопоставлении шаблонов для instanceof, представленном в JDK 16 в марте 2021 года. Далее, в будущих планах может потребоваться расширение шаблонов записей с помощью таких возможностей, How шаблоны массивов и vararg-шаблоны. Запись шаблонов является частью Project Amber, направленного на изучение и развитие небольших функций Java, ориентированных на производительность.

  • Предварительный просмотр чужой функции и API памяти. Он представит API, с помощью которого Java-программы смогут взаимодействовать с codeом и данными вне среды выполнения Java.

    Благодаря эффективному вызову внешних функций (codeа вне среды выполнения Java) и безопасному доступу к внешней памяти (памяти, не управляемой JVM) API позволит программам Java вызывать собственные библиотеки и обрабатывать собственные данные без Howой-либо опасности для Java Native Interface (JNI).

  • Предварительный просмотр виртуальных потоков (virtual threads). Это предложение представляет собой облегченные потоки, которые значительно сокращают усorя по написанию, обслуживанию и наблюдению за высокопроизводительными параллельными applicationsми. Идея предложения состоит в обеспечении возможности масштабирования serverных приложений, написанных в простом стиле “поток на request” (thread-per-request) с оптимальным использованием оборудования. Это позволит внедрять в code, использующий java.langThread API, виртуальные потоки с минимальными изменениями, а также устранять неполадки, выполнять отладку и профorрование виртуальных потоков с помощью существующих инструментов JDK.

  • Третья предварительная version сопоставления шаблонов для выражений и операторов switch. Она расширяет сопоставление шаблонов (pattern matching) до switch, чтобы позволить тестировать выражение по ряду шаблонов, каждый из которых имеет определенное действие. Благодаря этому сложные requestы, ориентированные на данные, могут быть выражены лаконично и безопасно. Эта функция ранее была предварительно представлена ​​в JDK 17 и JDK 18. В третьей предварительной версии будут добавлены улучшения, включая замену защищенных шаблонов when предложениями в switch-блоках. Идея предложения состоит в расширении выразительности и применимости switch-выражений и операторов.

  • ویکٹر API جو چوٿون انڪيوبيشن ویکٹر ڪمپيوٽيشن جو اظهار ڪندو جيڪي رن ٽائم تي قابل اعتماد طريقي سان گڏ ڪن ٿا بهترين ویکٹر هدايتون ۾ سپورٽ ٿيل پروسيسر آرڪيٽيڪچرز تي. هي برابر برابر اسڪيلر حسابن کان بهتر ڪارڪردگي فراهم ڪندو. نئون API استعمال ڪندي ڊولپرز HotSpot جي autovectorizer استعمال ڪندي جاوا ۾ پيچيده ویکٹر الگورتھم لکڻ جي قابل ٿي ويندا، پر ھڪڙي ڪسٽم ماڊل سان جيڪو ویکٹرائيزيشن کي وڌيڪ اڳڪٿي لائق ۽ قابل اعتماد بڻائيندو. ویکٹر API اڳ ۾ JDK 16، JDK 17، ۽ JDK 19 ۾ پکڙيل هو.

    ویکٹر API ۾ هڪ ٻي اضافي جي طور تي، bitwise integral lanwide آپريشن کي وڌايو ويندو ته جيئن آپريشن شامل ڪرڻ لاءِ هڪ بِٽ جي تعداد کي ڳڻڻ، بٽ آرڊر کي ريورس ڪرڻ، ۽ بٽ ڪمپريشن ۽ توسيع شامل ڪرڻ.

  • لينڪس/RISC-V پورٽ سان ، جاوا هارڊويئر انسٽرڪشن سيٽ سپورٽ حاصل ڪندو جيڪا اڳ ۾ ئي لينگويج ٽول ڪِٽس جي وسيع رينج سان سپورٽ ڪئي وئي آهي. RISC-V لاڳاپيل ISAs جو هڪ خاندان آهي. Linux/RISC-V پورٽ صرف RV64GV RISC-V ترتيب جي حمايت ڪندو، هڪ 64-bit عام مقصد ISA جنهن ۾ ویکٹر هدايتون شامل آهن.

    بندرگاھ ھيٺ ڏنل ھوٽ اسپاٽ ورچوئل مشين جي اختيارن جي مدد ڪندو: ٽيمپليٽ مترجم، JIT ڪمپليٽر C1 (ڪلائنٽ)، JIT ڪمپليٽر C2 (سرور)، ۽ سڀ موجوده وڏا ڪچرو گڏ ڪندڙ، بشمول ZGC ۽ Shenandoah.

JDK 18 وانگر، JDK 19 ڇهن مهينن جي مدد سان مختصر مدت جي رليز ٿيندي. پوئين رليز، JDK 17، ڪيترن ئي سالن تائين ضمانت جي حمايت سان هڪ LTS رليز هئي. اهو 14 سيپٽمبر 2021 تي متعارف ڪرايو ويو.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION