ใน Java มีคลาสมากมายที่ใช้เก็บข้อมูลบางประเภท แต่ละคลาสมีคุณสมบัติของตัวเองและคลาสที่ใช้ในการจัดเก็บข้อมูลประเภทหนึ่งจะเป็นตัวกำหนดว่าจะสามารถเข้าถึงและจัดการได้อย่างไร
หนึ่งในคลาสที่สำคัญที่สุดใน Java คือคลาส Vector Vector เป็นการนำอินเทอร์เฟซ List ไปใช้และใช้สำหรับสร้างอาร์เรย์ที่ปรับขนาดได้
กวดวิชานี้จะอธิบายโดยอ้างอิงถึงตัวอย่าง วิธีใช้คลาส Vector ใน Java เพื่อสร้างอาร์เรย์ที่ปรับขนาดได้ นอกจากนี้ บทช่วยสอนนี้จะกล่าวถึงวิธีที่ Vector เปรียบเทียบกับคลาส ArrayList ซึ่งคล้ายกับ Vector มาก
อินเทอร์เฟซรายการ Java
อินเทอร์เฟซรายการใช้เพื่อสร้างชุดข้อมูลที่เรียงลำดับใน Java ตัวอย่างเช่น List อาจจัดเก็บรายชื่อรองเท้าที่ขายในร้านรองเท้าหรือรายชื่อพนักงานทุกคนที่ทำงานในธนาคาร
อย่างไรก็ตาม เนื่องจาก List เป็นอินเทอร์เฟซ คุณไม่สามารถสร้างวัตถุจากรายการได้ ดังนั้น หากคุณต้องการสร้างรายการ คุณต้องใช้คลาสใดคลาสหนึ่งที่ขยายอินเทอร์เฟซรายการ ได้แก่ ArrayList, LinkedList, Vector และ Stack บทช่วยสอนนี้จะเน้นที่วิธีที่คุณสามารถใช้คลาส Vector เพื่อสร้างออบเจกต์ List ใน Java
จาวาเวกเตอร์
Vector ใช้อินเทอร์เฟซรายการเพื่อสร้างอาร์เรย์ที่ปรับขนาดได้ ในการสร้างเวกเตอร์ใน Java คุณสามารถใช้ไวยากรณ์ต่อไปนี้:
Vector<DataType> vector_name = new Vector<>();
แบ่งไวยากรณ์นี้ออกเป็นส่วนพื้นฐาน:
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
- เวกเตอร์ บอกโปรแกรมของเราว่าเราต้องการประกาศเวกเตอร์
- ประเภทข้อมูล คือประเภทของข้อมูลที่เวกเตอร์ของเราจะจัดเก็บ
- vector_name เป็นชื่อของเวกเตอร์ของเรา
- เวกเตอร์ใหม่<>(); สร้างเวกเตอร์ใหม่และกำหนดให้กับ
vector_name
ตัวแปร.
ตัวอย่างเช่น สมมติว่าเราต้องการประกาศเวกเตอร์ที่เก็บสีทั้งหมดของโคมไฟที่ห้างสรรพสินค้าของเราขาย เราสามารถใช้รหัสนี้เพื่อประกาศเวกเตอร์:
Vector<String> lamp_colors = new Vector>?();
ตอนนี้เรามีเวกเตอร์ชื่อ lamp_colors
ซึ่งสามารถเก็บโคมไฟสีต่างๆ ที่ห้างสรรพสินค้าของเราขายได้
เมธอด Java Vector
คลาส Java Vector มีหลายวิธีที่ใช้ในการดึงและจัดการข้อมูลที่จัดเก็บไว้ในเวกเตอร์ มาแบ่งวิธีการที่สำคัญที่สุดสองสามวิธีที่เสนอโดยคลาส Vector
เพิ่มรายการลงในเวกเตอร์
มีสามวิธีที่ใช้ในการเพิ่มรายการให้กับเวกเตอร์ สิ่งที่คุณใช้จะขึ้นอยู่กับว่าคุณต้องการเพิ่มรายการลงในเวกเตอร์อย่างไร
เพิ่มองค์ประกอบให้กับเวกเตอร์
add()
เมธอดใช้เพื่อเพิ่มองค์ประกอบให้กับเวกเตอร์ ไวยากรณ์สำหรับ add()
วิธีการคือ:
add(index, elementName);
add()
วิธียอมรับสองพารามิเตอร์:
- ดัชนี คือค่าดัชนีซึ่งรายการที่คุณระบุควรเพิ่มลงในเวกเตอร์
- ชื่อองค์ประกอบ คือรายการที่คุณต้องการเพิ่มลงในเวกเตอร์
หากคุณต้องการเพิ่มรายการต่อท้ายเวกเตอร์ index
พารามิเตอร์ไม่จำเป็น
สมมติว่าเรากำลังดำเนินการในเครือห้างสรรพสินค้า และกำลังทำรายการสีที่จำหน่ายโคมไฟตั้งโต๊ะเฉพาะสำหรับกลุ่มเฟอร์นิเจอร์ใหม่ของเรา ผู้ผลิตเพิ่งแจ้งเราว่าหลอดไฟสีส้มและสีน้ำเงินจะมาพร้อมกับคำสั่งซื้อถัดไป ดังนั้นเราจึงต้องการเพิ่มสีส้มและสีน้ำเงินในรายการสีของเรา
เราสามารถทำได้โดยใช้รหัสนี้:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> lamp_colors = new Vector<>(); lamp_colors.add("Orange"); lamp_colors.add("Blue"); System.out.println("Vector: " + lamp_colors); } }
รหัสของเราส่งคืน:
Vector: [Orange, Blue]
อย่างที่คุณเห็น รหัสของเราได้เพิ่ม Orange
และ Blue
ไปที่ lamp_colors
. ของเรา เวกเตอร์
สมมติว่าผู้ผลิตเพิ่งเอื้อมมือออกไปเพื่อบอกเราว่าพวกเขาจะส่งมอบโคมไฟสีเทาของเราด้วย เราต้องการเพิ่มโคมไฟสีเทาในช่วงเริ่มต้นของรายการ เนื่องจากเราคาดว่าจะได้รับความนิยมมากกว่าสีอื่นๆ เราสามารถทำได้โดยใช้ตัวอย่างจากด้านบนและเพิ่มรหัสนี้:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> lamp_colors = new Vector<>(); lamp_colors.add("Orange"); lamp_colors.add("Blue"); lamp_colors.add(0, "Gray"); System.out.println("Vector: " + lamp_colors); } }
รหัสของเราส่งคืน:
Vector: [Gray, Orange, Blue]
ในตัวอย่างนี้ เราได้ใช้ add()
วิธีการเพิ่ม Gray
ไปที่ lamp_colors
เวกเตอร์ เราระบุพารามิเตอร์ดัชนี 0 ในโค้ดของเราซึ่งบอก add()
เพื่อเพิ่ม Gray
รายการไปยังตำแหน่งดัชนี 0 กล่าวคือเราได้เพิ่ม Gray
จนถึงจุดเริ่มต้นของเวกเตอร์ของเรา จากนั้นเราบอกโปรแกรมของเราให้พิมพ์เวกเตอร์ทั้งหมดออกมา
ผสานเวกเตอร์
addAll()
วิธีถูกใช้เพื่อเพิ่มองค์ประกอบทั้งหมดจากเวกเตอร์ไปยังเวกเตอร์อื่น
สมมติว่าเรามีสองรายการ:ช่วงสีและสีของหลอดไฟ เราต้องการรวมสองรายการนี้เข้าด้วยกันเพราะผู้ผลิตหลอดไฟของเราแจ้งว่าพวกเขาจะสามารถผลิตโคมไฟได้ทุกสีในช่วงสีของเรา เราสามารถใช้รหัสต่อไปนี้เพื่อรวมรายการเวกเตอร์สองรายการเข้าด้วยกัน:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> color_range = new Vector<>(); Vector<String> lamp_colors = new Vector<>(); color_range.add("Blue"); color_range.add("Black"); color_range.add("Gray"); color_range.add("Pink"); color_range.add("Orange"); lamp_colors.addAll(color_range); System.out.println("Color range: " + color_range); System.out.println("Lamp colors: " + lamp_colors); } }
รหัสของเราส่งคืน:
Color range: [Blue, Black, Gray, Pink, Orange] Lamp colors: [Blue, Black, Gray, Pink, Orange]
รหัสของเราเพิ่มสีในช่วงสีของเราเป็นเวกเตอร์ color_range
. จากนั้นเราก็ใช้ addAll()
เพื่อเพิ่มสีทั้งหมดจาก color_range
ไปที่ lamp_colors
เวกเตอร์ ในบรรทัดสุดท้ายในโค้ดของเรา เราพิมพ์ทั้งเนื้อหาของ color_range
และ lamp_colors
ไปที่คอนโซล
ดึงองค์ประกอบจากเวกเตอร์
get()
วิธีการใช้เพื่อดึงองค์ประกอบเฉพาะจากเวกเตอร์ get()
ยอมรับหนึ่งพารามิเตอร์:ค่าดัชนีของรายการที่คุณต้องการดึงข้อมูล
สมมติว่ารายการสีของหลอดไฟถูกจัดเก็บตามลำดับตัวอักษร และเราต้องการดึงข้อมูลรายการแรกในรายการของเรา เราสามารถทำได้โดยใช้รหัสนี้:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> lamp_colors = new Vector<>(); lamp_colors.add("Black"); lamp_colors.add("Blue"); lamp_colors.add("Gray"); lamp_colors.add("Orange"); lamp_colors.add("Pink"); String first_element = lamp_colors.get(0); System.out.println("First element in list: " + first_element); } }
รหัสของเราส่งคืน:
First element in list: Black
ในโค้ดของเรา เราใช้ get()
วิธีการดึงรายการแรกใน lamp_colors
เวกเตอร์ เราระบุพารามิเตอร์ดัชนี 0 ซึ่งบอกให้รหัสของเราดึงข้อมูลรายการแรกในเวกเตอร์ หรืออีกนัยหนึ่งคือรายการที่ตำแหน่งดัชนี 0 จากนั้น เราพิมพ์องค์ประกอบแรกในรายการไปยังคอนโซล นำหน้าด้วย ข้อความ First element in list:
.
ลบองค์ประกอบออกจากเวกเตอร์
มีสามวิธีที่สามารถนำมาใช้เพื่อลบองค์ประกอบออกจากเวกเตอร์:remove()
, removeAll()
และ clear().
ลบองค์ประกอบเดียว
remove()
วิธีการใช้เพื่อลบองค์ประกอบเดียวออกจากเวกเตอร์ remove() a
ccepts หนึ่งพารามิเตอร์:ตำแหน่งดัชนีขององค์ประกอบที่คุณต้องการลบออกจากเวกเตอร์
กลับไปที่ห้างสรรพสินค้ากันเถอะ ผู้ผลิตของเราแจ้งเราว่าพวกเขาไม่สามารถผลิตโคมไฟสีส้มของเราได้อีกต่อไป ดังนั้นเราจึงจำเป็นต้องลบออกจากรายการสีที่เราจำหน่ายโคมไฟ เราสามารถทำได้โดยใช้รหัสนี้:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> lamp_colors = new Vector<>(); lamp_colors.add("Black"); lamp_colors.add("Blue"); lamp_colors.add("Gray"); lamp_colors.add("Orange"); lamp_colors.add("Pink"); lamp_colors.remove(3); System.out.println("New color list: " + lamp_colors); } }
รหัสของเราส่งคืน:
New color list: [Black, Blue, Gray, Pink]
เราได้ใช้ remove()
วิธีการลบรายการที่ตำแหน่งดัชนี 3 ในรายการของเรา ในกรณีนี้ ค่าของไอเทมนั้นคือ Orange
. จากนั้นเราพิมพ์รายการสีที่แก้ไขไปยังคอนโซล นำหน้าด้วยข้อความ New color list:
.
ลบองค์ประกอบทั้งหมด
removeAll()
และ clear().
เมธอดใช้เพื่อลบองค์ประกอบทั้งหมดออกจากรายการ โดยทั่วไปการใช้ clear()
เป็นที่นิยมเพราะมันมีประสิทธิภาพมากกว่า แต่คุณยังสามารถใช้ removeAll()
กระบวนการ.
สมมติว่าผู้ผลิตตัดสินใจว่าจะไม่สามารถผลิตโคมไฟของเราได้อีกต่อไปเนื่องจากกำลังลดขนาดการปฏิบัติงาน ดังนั้น เราจะไม่ขายโคมไฟอีกต่อไป จนกว่าจะพบผู้ผลิตรายใหม่ เราสามารถใช้รายการต่อไปนี้เพื่อลบสีทั้งหมดของโคมไฟที่เราขาย:
import java.util.Vector; class Main { public static void main(String[] args) { Vector<String> lamp_colors = new Vector<>(); lamp_colors.add("Black"); lamp_colors.add("Blue"); lamp_colors.add("Gray"); lamp_colors.add("Orange"); lamp_colors.add("Pink"); lamp_colors.clear(); System.out.println("New color list: " + lamp_colors); } }
รหัสของเราส่งคืน:
New color list: []
เราได้ใช้ clear()
วิธีการลบองค์ประกอบทั้งหมดใน lamp_colors
เวกเตอร์ จากนั้นในบรรทัดสุดท้ายของโค้ด เราพิมพ์วลี New color list:“ ตามด้วยเวกเตอร์ว่าง
Java Vector และ ArrayList
ทั้ง ArrayList และ Vector ใช้อินเทอร์เฟซรายการ Java คลาสเหล่านี้ยังมีวิธีการเดียวกัน อย่างไรก็ตาม มีความแตกต่างเล็กน้อยระหว่างทั้งสองคลาส
ความแตกต่างหลักที่ควรทราบคือคลาส Vector นั้นซิงโครไนซ์ ซึ่งหมายความว่ามีเพียงเธรดเดียวเท่านั้นที่สามารถเข้าถึงโค้ดได้ ในทางกลับกัน ArrayList จะไม่ซิงโครไนซ์ ดังนั้นหลายเธรดจึงสามารถทำงานในรายการได้พร้อมกัน
วิธีการเวกเตอร์เพิ่มเติม
นอกจากนี้ยังมีวิธีอื่นๆ อีกสองสามวิธีที่สามารถใช้เพื่อจัดการข้อมูลที่จัดเก็บไว้ในเวกเตอร์ได้ นี่คือตารางอ้างอิงด้วยวิธีการเหล่านี้:
ชื่อวิธีการ | คำอธิบาย |
ประกอบด้วย() | ค้นหาเวกเตอร์สำหรับค่าเฉพาะ |
ตัววนซ้ำ() | วนซ้ำผ่านเวกเตอร์ |
set() | เปลี่ยนองค์ประกอบในเวกเตอร์ |
ขนาด() | คืนค่าความยาวของเวกเตอร์ |
toArray() | แปลงเวกเตอร์เป็นอาร์เรย์ |
toString() | แปลงเวกเตอร์เป็นสตริง |
บทสรุป
คลาส Vector ใช้ใน Java เพื่อเก็บข้อมูลโดยใช้อินเทอร์เฟซรายการ ตัวอย่างเช่น อาจใช้ Vector เพื่อจัดเก็บรายการผลิตภัณฑ์ที่ขายในห้างสรรพสินค้าหรือรายการอาหารเสริมที่ร้านขายยาในท้องถิ่น
บทช่วยสอนนี้กล่าวถึงพื้นฐานของคลาส Java Vector วิธีสร้างเวกเตอร์ และความแตกต่างที่สำคัญระหว่าง Vector และ ArrayList นอกจากนี้ บทช่วยสอนนี้ยังกล่าวถึงวิธีการหลักที่สามารถใช้เพื่อดึงและจัดการเนื้อหาของเวกเตอร์ โดยอ้างอิงจากตัวอย่าง
ตอนนี้คุณมีทักษะที่จำเป็นในการเริ่มใช้คลาส Vector ใน Java อย่างมืออาชีพ!