บทช่วยสอนJava

Java HOME Java Intro Java เริ่มต้น Java Syntax ความคิดเห็นของ Java ตัวแปร Java Java Data Types การหล่อแบบจาวา ตัวดำเนินการ Java Java Strings Java Math Java Booleans Java If...Else Java Switch Java ในขณะที่ลูป Java สำหรับลูป Java Break/ต่อ Java Arrays

เมธอดของจาวา

เมธอดของจาวา พารามิเตอร์เมธอด Java วิธี Java โอเวอร์โหลด ขอบเขต Java Java Recursion

คลาส Java

Java OOP Java Classes/Objects คุณสมบัติคลาส Java วิธีการคลาส Java Java Constructors Java Modifiers การห่อหุ้มด้วยจาวา แพ็คเกจ Java / API มรดกจาวา Java Polymorphism Java Inner Classes Java Abstraction อินเทอร์เฟซ Java Java Enums อินพุตผู้ใช้ Java Java วันที่ Java ArrayList Java LinkedList Java HashMap Java HashSet Java Iterator คลาส Java Wrapper ข้อยกเว้น Java Java RegEx Java Threads จาวา แลมบ์ดา

การจัดการไฟล์ Java

ไฟล์ Java Java สร้าง/เขียนไฟล์ Java อ่านไฟล์ Java ลบไฟล์

Java ฮาวทู

เพิ่มสองตัวเลข

Java Reference

คีย์เวิร์ด Java เมธอด Java String Java Math Methods

ตัวอย่าง Java

ตัวอย่าง Java Java Compiler แบบฝึกหัด Java Java Quiz ใบรับรอง Java


Java LinkedList


Java LinkedList

ในบทที่แล้ว คุณได้เรียนรู้เกี่ยวกับArrayListชั้นเรียน คลาสLinkedListเกือบจะเหมือนกับ ArrayList:

ตัวอย่าง

// Import the LinkedList class
import java.util.LinkedList;

public class Main {
  public static void main(String[] args) {
    LinkedList<String> cars = new LinkedList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    System.out.println(cars);
  }
}


ArrayList กับ LinkedList

คลาสLinkedListคือคอลเล็กชันที่สามารถบรรจุอ็อบเจ็กต์ประเภทเดียวกันได้มากมาย เช่นเดียวกับไฟล์ArrayList.

คลาสLinkedListมีเมธอดทั้งหมดเหมือนกับArrayListคลาส เนื่องจากทั้งคู่ใช้Listอินเทอร์เฟซ ซึ่งหมายความว่าคุณสามารถเพิ่มรายการ เปลี่ยนแปลงรายการ ลบรายการ และล้างรายการในลักษณะเดียวกันได้

อย่างไรก็ตาม ในขณะที่ArrayListคลาสและLinkedListคลาสสามารถใช้ได้ในลักษณะเดียวกัน พวกมันถูกสร้างขึ้นแตกต่างกันมาก

ArrayList ทำงานอย่างไร

คลาสArrayListมีอาร์เรย์ปกติอยู่ภายใน เมื่อเพิ่มองค์ประกอบแล้ว องค์ประกอบนั้นจะถูกวางลงในอาร์เรย์ หากอาร์เรย์ไม่ใหญ่พอ จะมีการสร้างอาร์เรย์ใหม่ที่ใหญ่กว่าเพื่อแทนที่อาร์เรย์เก่าและอาร์เรย์เก่าจะถูกลบออก

LinkedList ทำงานอย่างไร

เก็บLinkedListของใน "คอนเทนเนอร์" รายการมีลิงก์ไปยังคอนเทนเนอร์แรก และคอนเทนเนอร์แต่ละรายการมีลิงก์ไปยังคอนเทนเนอร์ถัดไปในรายการ ในการเพิ่มองค์ประกอบในรายการ องค์ประกอบจะถูกวางลงในคอนเทนเนอร์ใหม่และคอนเทนเนอร์นั้นเชื่อมโยงกับคอนเทนเนอร์อื่นในรายการ

เมื่อต้องการใช้

ใช้ArrayListสำหรับจัดเก็บและเข้าถึงข้อมูล และLinkedList เพื่อจัดการข้อมูล


วิธีการ LinkedList

ในหลายกรณี วิธีArrayListนี้จะมีประสิทธิภาพมากกว่าเนื่องจากเป็นเรื่องปกติที่จะต้องเข้าถึงรายการสุ่มในรายการ แต่LinkedListมีวิธีการหลายวิธีในการดำเนินการบางอย่างให้มีประสิทธิภาพมากขึ้น:

Method Description Try it
addFirst() Adds an item to the beginning of the list.
addLast() Add an item to the end of the list
removeFirst() Remove an item from the beginning of the list.
removeLast() Remove an item from the end of the list
getFirst() Get the item at the beginning of the list
getLast() Get the item at the end of the list