Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 📦 1. Array
- Какво е? Фиксиран по размер контейнер за елементи от един и същи тип.
- Кога се използва? Когато знаем предварително колко елемента ще имаме.
- int[] numbers = {1, 2, 3};
- System.out.println(numbers[0]); // 1
- 📦 2. ArrayList
- Какво е? Динамичен масив с бърз достъп по индекс.
- Кога се използва? Когато размерът на списъка може да се променя често.
- import java.util.ArrayList;
- ArrayList<String> names = new ArrayList<>();
- names.add("Иван");
- System.out.println(names.get(0)); // Иван
- 📦 3. LinkedList
- Какво е? Двусвързан списък с лесно добавяне и премахване.
- Кога се използва? Когато често добавяме/махаме от началото или средата.
- import java.util.LinkedList;
- LinkedList<Integer> list = new LinkedList<>();
- list.add(10);
- list.add(20);
- System.out.println(list.getFirst()); // 10
- 📦 4. HashMap
- Какво е? Несортирана асоциативна структура от ключ–стойност.
- Кога се използва? Когато искаме бърз достъп по ключ.
- import java.util.HashMap;
- HashMap<String, Integer> map = new HashMap<>();
- map.put("А", 1);
- map.put("Б", 2);
- System.out.println(map.get("А")); // 1
- 📦 5. TreeMap
- Какво е? Сортирана по ключове асоциативна структура.
- Кога се използва? Когато искаме ключовете да са подредени.
- import java.util.TreeMap;
- TreeMap<String, Integer> map = new TreeMap<>();
- map.put("Б", 2);
- map.put("А", 1);
- System.out.println(map.firstKey()); // А
- 📦 6. HashSet
- Какво е? Множество без повторения, без определен ред.
- Кога се използва? Когато трябва да съхраним уникални елементи.
- import java.util.HashSet;
- HashSet<String> set = new HashSet<>();
- set.add("Java");
- set.add("Java");
- System.out.println(set.size()); // 1
- 📦 7. TreeSet
- Какво е? Сортирано множество без дубликати.
- Кога се използва? Когато искаме уникални елементи в нареден вид.
- import java.util.TreeSet;
- TreeSet<Integer> set = new TreeSet<>();
- set.add(3);
- set.add(1);
- System.out.println(set.first()); // 1
- 📦 8. Stack
- Какво е? Стек (LIFO – последен влязъл, пръв излиза).
- Кога се използва? При рекурсивни алгоритми, браузър история и др.
- import java.util.Stack;
- Stack<Integer> stack = new Stack<>();
- stack.push(10);
- stack.push(20);
- System.out.println(stack.pop()); // 20
- 📦 9. Queue
- Какво е? Опашка (FIFO – първи влязъл, първи излиза).
- Кога се използва? При обработка на събития, задачи и т.н.
- import java.util.Queue;
- import java.util.LinkedList;
- Queue<String> queue = new LinkedList<>();
- queue.add("A");
- queue.add("B");
- System.out.println(queue.poll()); // A
- 📦 10. Deque (Double-Ended Queue)
- Какво е? Опашка с добавяне/премахване и от двете страни.
- Кога се използва? При буфери или палиндромни проверки.
- import java.util.ArrayDeque;
- import java.util.Deque;
- Deque<String> deque = new ArrayDeque<>();
- deque.addFirst("начало");
- deque.addLast("край");
- System.out.println(deque.getFirst()); // начало
- 📦 11. PriorityQueue
- Какво е? Приоритетна опашка – елементите се извеждат според приоритет.
- Кога се използва? При задачи със спешност, алгоритъм на Дейкстра и др.
- import java.util.PriorityQueue;
- PriorityQueue<Integer> pq = new PriorityQueue<>();
- pq.add(30);
- pq.add(10);
- System.out.println(pq.poll()); // 10
- 📦 12. Hashtable
- Какво е? Стара, синхронизирана хеш таблица.
- Кога се използва? Рядко – заменена от HashMap.
- import java.util.Hashtable;
- Hashtable<String, String> table = new Hashtable<>();
- table.put("Ключ", "Стойност");
- System.out.println(table.get("Ключ")); // Стойност
- 📦 13. Vector
- Какво е? Стара версия на ArrayList, синхронизирана.
- Кога се използва? Почти никога в съвременен код.
- import java.util.Vector;
- Vector<Integer> vector = new Vector<>();
- vector.add(100);
- System.out.println(vector.get(0)); // 100
- 📦 14. BitSet
- Какво е? Масив от бита (boolean стойности).
- Кога се използва? За ефективни побитови операции.
- import java.util.BitSet;
- BitSet bits = new BitSet();
- bits.set(2);
- System.out.println(bits.get(2)); // true
Advertisement