Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีใช้เวกเตอร์ใน Java

วิธีใช้เวกเตอร์ใน Java

ใน 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 อย่างมืออาชีพ!