Java ArrayList
Java ArrayList
ArrayList — o‘lchami o‘zgaruvchan massivga o‘xshaydi.
U java.util paketiga kiradi va List interfeysini amalga oshiradi.
Java tilidagi o‘rnatilgan massiv bilan ArrayList o‘rtasidagi farq shundaki, massivning o‘lchamini o‘zgartirib bo‘lmaydi (massivga element qo‘shish yoki undan element olib tashlash uchun yangi massiv yaratishingiz kerak). ArrayList’ga esa istalgan vaqtda element qo‘shish va undan element olib tashlash mumkin.
ArrayList yaratish
ArrayList’dan foydalanish uchun avval uni java.util’dan import qilishingiz kerak:
Misol
Stringlarni saqlaydigan cars nomli ArrayList obyektini yarating:
import java.util.ArrayList; // Import the ArrayList class
ArrayList<String> cars = new ArrayList<String>(); // Create an ArrayList object
Endi elementlar ro‘yxatini boshqarish uchun add(), get(), set() va remove() kabi metodlardan foydalanishingiz mumkin.
Element qo‘shish
ArrayList’ga element qo‘shish uchun add() metodidan foydalaning:
Misol
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
Indeks raqamini ko‘rsatib, elementni belgilangan o‘ringa ham qo‘shishingiz mumkin:
Misol
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add(0, "Mazda"); // Insert element at the beginning of the list (0)
System.out.println(cars);
}
}
ArrayList elementlarni siz qo‘shgan tartibda saqlaydi, shuning uchun birinchi qo‘shilgan element 0-indeksda, keyingisi 1-indeksda bo‘ladi va hokazo.
Elementga murojaat qilish
ArrayList’dagi elementga murojaat qilish uchun get() metodidan foydalaning va indeks raqamini ko‘rsating:
Elementni o‘zgartirish
Elementni o‘zgartirish uchun set() metodidan foydalaning va indeks raqamini ko‘rsating:
Elementni o‘chirish
Elementni o‘chirish uchun remove() metodidan foydalaning va indeks raqamini ko‘rsating:
ArrayList’dagi barcha elementlarni o‘chirish uchun clear() metodidan foydalaning:
ArrayList o‘lchami
ArrayList’da nechta element borligini bilish uchun size metodidan foydalaning:
ArrayList bo‘ylab sikl
ArrayList elementlarini for sikli yordamida aylanib chiqing va sikl necha marta bajarilishini belgilash uchun
size() metodidan foydalaning:
Misol
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (int i = 0; i < cars.size(); i++) {
System.out.println(cars.get(i));
}
}
}
ArrayList bo‘ylab for-each sikli yordamida ham aylanib chiqishingiz mumkin:
Misol
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (String i : cars) {
System.out.println(i);
}
}
}
Boshqa tiplar
ArrayList elementlari aslida obyektlardir. Yuqoridagi misollarda "String" tipidagi elementlar (obyektlar) yaratdik. Esda tuting, Java tilida String obyekt hisoblanadi (primitiv tip emas). int kabi boshqa tiplardan foydalanish uchun unga mos o‘rovchi sinfni (wrapper class) ko‘rsatishingiz kerak: Integer. Boshqa primitiv tiplar uchun quyidagilardan foydalaning: boolean uchun Boolean, char uchun Character, double uchun Double va h.k.:
Misol
Sonlarni saqlash uchun ArrayList yarating (Integer tipidagi elementlarni qo‘shing):
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(10);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(25);
for (int i : myNumbers) {
System.out.println(i);
}
}
}
ArrayList’ni saralash
java.util paketidagi yana bir foydali sinf — Collections sinfi; unda ro‘yxatlarni alifbo yoki son tartibida saralash uchun sort() metodi bor:
Misol
Stringlardan iborat ArrayList’ni saralang:
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
Collections.sort(cars); // Sort cars
for (String i : cars) {
System.out.println(i);
}
}
}
Misol
Butun sonlardan (Integer) iborat ArrayList’ni saralang:
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);
Collections.sort(myNumbers); // Sort myNumbers
for (int i : myNumbers) {
System.out.println(i);
}
}
}
var kalit so‘zi
Java 10 dan boshlab tipni ikki marta yozmasdan ArrayList o‘zgaruvchisini e’lon qilish uchun var kalit so‘zidan foydalanishingiz mumkin. Kompilyator tipni siz beradigan qiymatdan aniqlaydi.
Bu kodni qisqartiradi, ammo ko‘plab dasturchilar aniqlik uchun baribir to‘liq tipdan foydalanadi. var Java tilida to‘g‘ri sintaksis bo‘lgani uchun uni boshqa kodlarda uchratishingiz mumkin, shuning uchun uning mavjudligini bilib qo‘ygan ma’qul:
Misol
// Without var
ArrayList<String> cars = new ArrayList<String>();
// With var
var cars = new ArrayList<String>();
List interfeysi
Eslatma: Ba’zan Java kodida List va ArrayList’ni birga ko‘rasiz, masalan:
import java.util.List;
import java.util.ArrayList;
List<String> cars = new ArrayList<>();
Bu o‘zgaruvchi (cars) List (interfeys) sifatida e’lon qilingan, ammo u ArrayList obyektini (haqiqiy ro‘yxatni) saqlashini anglatadi. ArrayList sinfi List interfeysini amalga oshirgani uchun bu mumkin.
U xuddi shunday ishlaydi, ammo ba’zi dasturchilar bu uslubni afzal ko‘radi, chunki u keyinchalik tipni o‘zgartirish uchun ko‘proq moslashuvchanlik beradi.
ArrayList bo‘yicha to‘liq ma’lumotnoma
ArrayList metodlari bo‘yicha to‘liq ma’lumotnoma uchun Java ArrayList ma’lumotnomasiga o‘ting.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
