Sobes.tech
Middle

რა ოპერაციები არსებობს სტრიმებში და რა ტიპის ოპერაციები არსებობს?

sobes.tech AI

პასუხი AI-სგან

Java 8+-ში, ნაკადები უზრუნველყოფს მონაცემთა კოლექციების დამუშავებისთვის ოპერაციების ნაკრებს.

ოპერაციების ტიპები:

  1. შუალედური (Intermediate): აბრუნებს ახალ ნაკადს. შეიძლება შესრულდეს ფრთხილად. საშუალებას აძლევს ოპერაციების ჯაჭვურად დაკავშირებას. მათში შედის:

    • filter()
    • map()
    • flatMap()
    • distinct()
    • sorted()
    • peek()
    • limit()
    • skip()
  2. ტერმინალური (Terminal): ასრულებს ნაკადის მუშაობას, ახორციელებს დამუშავებას და აბრუნებს შედეგს ან იწვევს გვერდით ეფექტს. ტერმინალური ოპერაციის შესრულების შემდეგ, ნაკადი აღარ შეიძლება გამოყენებულ იქნას. მათში შედის:

    • forEach()
    • forEachOrdered()
    • toArray()
    • reduce()
    • collect()
    • count()
    • sum()
    • average()
    • min()
    • max()
    • anyMatch()
    • allMatch()
    • noneMatch()
    • findFirst()
    • findAny()

ოპერაციების ჯაჭვის მაგალითი:

// შუალედური ოპერაციები (filter, map)
// ტერმინალური ოპერაცია (collect)
List<String> filteredList = originalList.stream()
    .filter(s -> s.startsWith("A")) // ელემენტების ფილტრი, რომლებიც იწყება "A"
    .map(String::toUpperCase) // გადაყვანა დიდ ასოებში
    .collect(Collectors.toList()); // შედეგების შეგროვება სიაში