Junior
Kādi ir datu apstrādes veidi Java?
sobes.tech AI
Atbilde no AI
-
Iterācija:
for,while,do-whilecilpas.- Iteratori (
Iterator,ListIterator). - Paplašinātā
forcilpa (foreach).
List<String> data = new ArrayList<>(); data.add("item1"); data.add("item2"); for (String item : data) { System.out.println(item); // Katra elementa apstrāde } -
Plūsmas (Streams):
- API deklaratīvai kolekciju apstrādei.
- Augsta līmeņa operācijas:
filter,map,reduce,collect. - Atbalsta paralēlu apstrādi.
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); List<Integer> evenNumbers = numbers.stream() .filter(n -> n % 2 == 0) // Filtrēt pāra skaitļus .collect(Collectors.toList()); // Savākt sarakstā -
Paralēlās plūsmas (Parallel Streams):
- Paplašinājums plūsmām automātiskai paralēlizācijai.
- Vienkārša lietošana:
.parallelStream().
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9); int sum = numbers.parallelStream() .mapToInt(Integer::intValue) .sum(); // Paralēla summēšana -
RxJava / Reactor (Reaktīvā programmēšana):
- Reaktīvā programmēšana asīnhronai plūsmu apstrādei.
- Izmanto novērojamās (
Observable,Flux) un operatorus (map,filter,merge).
// Piemērs ar RxJava Observable<String> source = Observable.just("Alpha", "Beta", "Gamma"); source.subscribe(s -> System.out.println("Saņemts: " + s)); // Katras elementa apstrāde asīnhroni -
Apache Spark / Hadoop MapReduce:
-
Izplatīto datu apstrādes ietvari.
-
Piemērots ETL procesiem, analītikai un datu apstrādei klastera mērogā.
-
(Koda piemērs Spark/Hadoop ir pārāk apjomīgs īsam atbildei, bet būtība ir izplatītās skaitļošanas metodes).
-
-
Java datu struktūras:
- Atbilstošu datu struktūru (Arrays, Lists, Sets, Maps) izmantošana efektīvai datu glabāšanai un piekļuvei.
- Piemēram,
HashMapātrai meklēšanai pēc atslēgas,HashSetunikāliem elementiem.
Map<String, Integer> ages = new HashMap<>(); ages.put("Alice", 30); ages.put("Bob", 25); System.out.println(ages.get("Alice")); // Ātra piekļuve datiem pēc atslēgas -
Datubāzes (JDBC / ORM):
- Datu apstrāde ārējos datu bāzēs.
- JDBC tiešai SQL saskarnes izmantošanai.
- ORM (Hibernate, JPA) objektu-reliģiskā kartēšana.
// Piemērs ar JDBC try (Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT name, age FROM users")) { while (rs.next()) { String name = rs.getString("name"); int age = rs.getInt("age"); System.out.println("Lietotājs: " + name + ", Vecums: " + age); // Datu apstrāde no DB } } catch (SQLException e) { e.printStackTrace(); }
Izvēle ir atkarīga no datu apjoma, veiktspējas prasībām, paralēlismu un apstrādes loģikas sarežģītības.