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

เชี่ยวชาญ Java ArrayList: เมธอดสำคัญและตัวอย่างปฏิบัติ

ในโพสต์นี้ เราครอบคลุมเมธอด Java ArrayList ที่พบบ่อยที่สุด พร้อมโค้ดตัวอย่างสำหรับแต่ละเมธอด

Class ArrayList เป็น array ที่ปรับขนาดได้ (resizable array) เรามักใช้ ArrayList เมื่อไม่รู้ขนาดของ list ล่วงหน้า

Class ArrayList อยู่ใน package java.util

วิธีสร้าง ArrayList

เพื่อสร้าง ArrayList และเพิ่ม items เรา instantiate ArrayList object พร้อมระบุชนิด เช่น String หรือ Integer

สังเกตว่าเมธอด add() เพิ่ม item ไปตำแหน่งถัดไปใน ArrayList ดูตัวอย่างถัดไปวิธีเพิ่ม item ที่ index เฉพาะ

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket); } }

Output:

[Apple, Banana, Grapes, Orange]

วิธีเพิ่ม Item ที่ตำแหน่งเฉพาะ

เพื่อเพิ่ม item ที่ตำแหน่งที่ต้องการ เราต้องระบุ index ที่ต้องการให้เมธอด add()

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); fruitBasket.add(2, "Melon"); System.out.println(fruitBasket); } }

Output:

[Apple, Banana, Melon, Grapes, Orange]

วิธีเข้าถึง Item ใน ArrayList

เมธอด get() ดึง item ต้องระบุ index ให้เมธอด get()

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket.get(1)); } }
Banana

วิธีลบ Item จาก ArrayList

เพื่อลบ item เราใช้เมธอด remove() ต้องระบุ index

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); fruitBasket.remove(0); System.out.println(fruitBasket); } }

Output:

[Banana, Grapes, Orange]

วิธีลบ Items ทั้งหมดจาก ArrayList

เมธอด clear() ลบ items ทั้งหมดจาก ArrayList

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); fruitBasket.clear(); System.out.println(fruitBasket); } }
[]

วิธีหาขนาดของ ArrayList

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket.size()); } }

Output:

4

วิธี Loop ผ่าน ArrayList

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); for (int i = 0; i < fruitBasket.size(); i++) { System.out.println(fruitBasket.get(i)); } } }

Output:

Apple Banana Grapes Orange

Loop ผ่าน ArrayList ด้วย for-each

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); for (String i : fruitBasket) { System.out.println(i); } } }

Output:

Apple Banana Grapes Orange

ArrayList ตัวอย่างกับตัวเลข

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList numbers = new ArrayList<>(); numbers.add(10); numbers.add(20); numbers.add(30); numbers.add(40); for (int i : numbers) { System.out.println(i); } } }

Output:

10 20 30 40

วิธีแทนที่ Item ใน ArrayList

เมธอด replace() แทนที่ item ด้วย item อื่นที่ให้มา ต้องระบุ index ของ item ที่จะแทนที่

หมายเหตุ: เมธอดที่ถูกต้องคือ set() ไม่ใช่ replace()

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); fruitBasket.set(3, "Peach"); for (String i : fruitBasket) { System.out.println(i); } } }

Output:

#before replace [Apple, Banana, Grapes, Orange] #after replace [Apple, Banana, Grapes, Peach]

วิธีสุ่มลำดับ Items ใน ArrayList

เมธอด shuffle() อยู่ใน class Collections ใช้สำหรับสุ่มลำดับ items ใน ArrayList

import java.util.ArrayList; import java.util.Collections; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket); Collections.shuffle(fruitBasket); System.out.println(fruitBasket); } }

Output:

#before shuffle [Apple, Banana, Grapes, Orange] #after shuffle [Grapes, Orange, Banana, Apple]

วิธีเรียงลำดับ Items ใน ArrayList

import java.util.ArrayList; import java.util.Collections; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Orange"); fruitBasket.add("Apple"); fruitBasket.add("Grapes"); fruitBasket.add("Banana"); System.out.println(fruitBasket); Collections.sort(fruitBasket); System.out.println(fruitBasket); } }

Output:

#before sort [Orange, Apple, Grapes, Banana] #after sort [Apple, Banana, Grapes, Orange]

วิธีกลับลำดับ Items ใน ArrayList

import java.util.ArrayList; import java.util.Collections; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket); Collections.reverse(fruitBasket); System.out.println(fruitBasket); } }

Output:

#original list [Apple, Banana, Grapes, Orange] #after reverse [Orange, Grapes, Banana, Apple]

วิธีแปลง ArrayList เป็น Array

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); String[] fruitArray = new String[fruitBasket.size()]; fruitBasket.toArray(fruitArray); for (String i : fruitArray) { System.out.println(i); } } }

Output:

Apple Banana Grapes Orange

วิธีสลับสอง Items ใน ArrayList

import java.util.ArrayList; import java.util.Collections; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket = new ArrayList<>(); fruitBasket.add("Apple"); fruitBasket.add("Banana"); fruitBasket.add("Grapes"); fruitBasket.add("Orange"); System.out.println(fruitBasket); Collections.swap(fruitBasket, 1, 3); System.out.println(fruitBasket); } }

Output:

#before swap [Apple, Banana, Grapes, Orange] #after swap [Apple, Orange, Grapes, Banana]

วิธีรวมสอง ArrayLists

import java.util.ArrayList; public class ArrayListTutorial { public static void main(String[] args) { ArrayList fruitBasket1 = new ArrayList<>(); ArrayList fruitBasket2 = new ArrayList<>(); fruitBasket1.add("Apple"); fruitBasket1.add("Banana"); fruitBasket1.add("Grapes"); fruitBasket1.add("Orange"); fruitBasket2.add("Melon"); fruitBasket2.add("Strawberries"); fruitBasket1.addAll(fruitBasket2); System.out.println(fruitBasket1); } }

Output:

[Apple, Banana, Grapes, Orange, Melon, Strawberries]

สรุป

ในโพสต์นี้คุณเห็นตัวอย่าง operations ต่างๆ ที่พบบ่อยที่สุดบน Java ArrayLists