Parę małych przykładów z użyciem kolekcji:

Operacje na listach

//
// Tworzenie listy z tablicy
//
List<String> list1 = Arrays.asList(new String[]{"Pierwszy", "Drugi", "Trzeci", "Czwarty", "Piąty"});
 
//
// Standartowe tworzenie listy
//
List<String> list2 = new ArrayList<>();
list2.add("Pozycja 1");
list2.add("Pozycja 2");
list2.add("Pozycja 3");
list2.add("Pozycja 4");
list2.add("Pozycja 5");
 
// Dodajemy duplikat
list2.add("Pozycja 4");
 
//
// Standartowe tworzenie listy
//
List<Double> list3 = new ArrayList<>();
list3.add(10.0);
list3.add(25.0);
list3.add(20.0);
list3.add(35.5);
list3.add(33.0);
 
//
// Przechodzenie wypisywanie wartości
//
System.out.println("Lista1: " + list1.toString());
System.out.println("Lista2: ");
list2.forEach(s -> System.out.println(s));
System.out.println("Lista3: ");
for (Double var : list3){
   System.out.println(var);
}
 
//
// Domyślne sortowanie (naturalne)
//
System.out.println();
Collections.sort(list1);
System.out.println("Lista1 po sortowaniu: " + list1.toString());
 
//
// Sortowanie odwrotne
//
Collections.sort(list1, Comparator.reverseOrder());
System.out.println("Lista1 po odwrotnym sortowaniu: " + list1.toString());
 
//
// Małe kasowanie
//
System.out.println();
System.out.println("Lista2 przed kasowaniem: " + list2.toString());
list2.remove("Pozycja 3");
list2.remove(0);
System.out.println("Lista2 po kasowaniu: " + list2.toString());
 
//
// Filtrowanie przy użyciu strumieni
//
System.out.println();
System.out.println("Lista3 filtrowanie przy pomocy strumienii");
list3.stream()
    .filter(d -> d > 21.0)
    .forEach(d -> System.out.println(d.toString()));
 
//
// Przekształcenie listy do tablicy
//
 
// Nie zalecana metoda bo przekształcamy do tablicy obiektów nie znanego typu
Object[] objArray = list1.toArray();
 
// Zalecana metoda bo przekształcamy do tablicy znanego typu
String[] stringArray = list1.toArray(new String[0]);
 
System.out.println();
System.out.println("Tablica obiektów: " + Arrays.toString(objArray));
System.out.println("Tablica stringów: " + Arrays.toString(stringArray));

Operacje na setach

//
// Tworzenie zbiorów
//
Set<String> set1 = new HashSet<String>(Arrays.asList(new String[]{"Pozycja 1", "Pozycja 2", "Pozycja 3", "Pozycja 4"}));
 
Set<String> set2 = new TreeSet<>();
set2.add("Menu 1");
set2.add("Menu 3");
set2.add("Menu 4");
set2.add("Menu 2");
 
// Dodajemy jeszcze raz obiekt "Menu 2" ale set nie może zawierać duplikatów
set2.add("Menu 2");
 
//
// Drukowanie zawartości
//
System.out.println("Set1: " + set1.toString());
System.out.println("Set2 jest posortowany (TreeSet) oraz nie widać zduplikowanego \"Menu 2\": " + set2.toString());
 
//
// Filtrowanie przy pomocy streamów
//
System.out.println();
System.out.println();
System.out.println("Set1 filtrowany przy pomocy stream:");
set1.stream()
   .filter(s -> !s.equals("Pozycja 2"))
   .filter(s -> !s.equals("Pozycja 3"))
   .forEach(s -> System.out.print(s + " "));
 
//
// Sortowanie i mapowanie przy pomocy stream
//
System.out.println();
System.out.println();
System.out.println("Set2 przekształcany i sortowany przy pomocy stream:");
set2.stream()
   .sorted(Comparator.reverseOrder())
   .map(String::toUpperCase)
   .forEach(s -> System.out.print(s + " "));
 
//
// Pobranie podzbioru
//
final SortedSet subSet = ((TreeSet) set2).subSet("Menu 1", "Menu 3");
System.out.println();
System.out.println();
System.out.println("Subset: " + subSet.toString());

Operacje na mapach

//
// Mapa dla przykładu będąca typowym słownikiem
//
Map<String, String> mapPL = new HashMap<>();
Map<String, String> mapRU = new HashMap<>();
 
mapPL.put("Home", "Strona główna");
mapPL.put("Back", "Powrót");
mapPL.put("Cancel", "Zrezygnuj");
 
mapRU.put("Home", "Главная");
mapRU.put("Back", "Назад");
mapRU.put("Cancel", "Отмена");
 
//
// Wyświetlenie wersji językoweych
//
System.out.println("Mapa z tłumaczeniami:");
final Set<String> keySet = mapPL.keySet();
for (String key : keySet){
   System.out.println("En: " + key + " Pl: " + mapPL.get(key) + " Ru: " + mapRU.get(key));
}
 
 
//
// Dla przykładu mapa zawierająca posortowane stawki
//
Map<String, BigDecimal> map2=new TreeMap<>();
map2.put("5 th", new BigDecimal(10));
map2.put("4 th", new BigDecimal(25));
map2.put("3 rd", new BigDecimal(50));
map2.put("2 nd", new BigDecimal(100));
map2.put("1 st", new BigDecimal(200));
 
System.out.println("Posortowana mapa:");
System.out.println(map2);