Computer >> Máy Tính >  >> Lập trình >> Java

Phát trực tiếp trong Java

Luồng đại diện cho một chuỗi các đối tượng từ một nguồn, hỗ trợ các hoạt động tổng hợp. Sau đây là các đặc điểm của Luồng -

  • Chuỗi các phần tử - Luồng cung cấp một tập hợp các phần tử của kiểu cụ thể một cách tuần tự. Luồng nhận / tính toán phần tử theo yêu cầu. Nó không bao giờ lưu trữ các phần tử.

  • Nguồn - Luồng lấy Bộ sưu tập, Mảng hoặc tài nguyên I / O làm nguồn đầu vào.

  • Hoạt động tổng hợp - Luồng hỗ trợ các hoạt động tổng hợp như bộ lọc, bản đồ, giới hạn, giảm, tìm, đối sánh, v.v.

  • Pipelining - Hầu hết các hoạt động luồng đều trả về chính luồng để kết quả của chúng có thể được tạo thành chuỗi. Các hoạt động này được gọi là hoạt động trung gian và chức năng của chúng là lấy đầu vào, xử lý và trả đầu ra cho đích. Phương thức collect () là một hoạt động đầu cuối thường xuất hiện ở cuối hoạt động pipelining để đánh dấu sự kết thúc của luồng.

  • Lặp lại tự động - Các hoạt động luồng thực hiện lặp đi lặp lại nội bộ đối với các phần tử nguồn được cung cấp, ngược lại với Bộ sưu tập trong đó yêu cầu lặp lại rõ ràng.

Ví dụ

Bây giờ chúng ta hãy xem một ví dụ -

import java.util.Collection;
import java.util.TreeSet;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Demo {
   public static void main(String[] args) {
      Stream<String> stream = Stream.of("25", "10", "15", "20", "25");
      Collection<String> collection = stream.collect(Collectors.toCollection(TreeSet::new));
      System.out.println("Collection = "+collection);
   }
}

Đầu ra

Collection = [100, 130, 150, 20, 200, 50, 80]

Ví dụ

Bây giờ, chúng ta hãy đếm số phần tử trong luồng bằng phương thức đếm luồng Java () -

import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Demo {
   public static void main(String[] args) {
      Stream<String> stream = Stream.of("Kevin", "Jofra","Tom", "Chris", "Liam");
      // count
      long count = stream.collect(Collectors.counting());
      System.out.println("Number of elements in the stream = "+count);
   }
}

Đầu ra

Number of elements in the stream = 5