cuốn sách gpt4 ai đã làm

Tính năng mới của Java8 Truyền tải bộ sưu tập API Stream

In lại Tác giả: Người biết Thời gian cập nhật: 2024-03-13 05:58:07 29 4
mua khóa gpt4 Nike

Lời nói đầu

Khi phiên bản Java tiếp tục được cập nhật và lặp lại,javaSự phát triển cũng có thể trở nên ngọt ngào Phiên bản mới nhất là Java11, nhưng các phiên bản sau này không còn hỗ trợ thương mại và yêu cầu tính phí. Tuy nhiên, Java8 vẫn được cập nhật liên tục miễn phí. Các phiên bản sau này cũng được cập nhật rất nhanh nên việc sử dụng ổn định vẫn được sử dụng java8, bạn có thể trải nghiệm các tính năng mới mà không phải lo lắng về các lỗi do nâng cấp gây ra.

tính năng mới

Các tính năng tương đối mới là biểu thức Stream và lambda

Hình ảnh trên cho thấy một số phương pháp thường được sử dụng.Phương pháp trì hoãn, đây là một phương pháp trung gian để xử lý dữ liệu.phương pháp cuối cùngĐây là phương pháp kết thúc dữ liệu phù hợp để xử lý dễ dàng.

Phương pháp trì hoãnNguyên tắc của việc lười tải các biểu thức lambda là như nhau. Nó có thể thực hiện lập trình chuỗi như list.().filter().map().limit(). Bạn có thể tiếp tục nhấp chuột và bước cuối cùng như sau:đếmhoặcgiảng dạyTải dữ liệu

truyền tải bộ sưu tập luồng cho mỗi

Duyệt qua danh sách trực tiếplist.stream().forEachđi qua

List a=new ArrayList<>(); a.add("judy"); a.add("Tom"); // biểu thức lambda a.stream().forEach(s -> System.out . println(s)); a.stream().forEach(s -> { System.out.println(s); System.out.println(2); });

Truyền tải đối tượng phức tạp trong bộ sưu tập

Sinh viên sinh viên = sinh viên mới(); sinh viên.setAddress("Đường Lujiabang, quận Hoàng Phố, Thượng Hải"); sinh viên.setName("judy"); sinh viên.setAge(26); ); sinh viên.add(sinh viên); // biểu thức lambda sinh viên.stream().forEach(student1 -> System.out.println(student1.name)); sinh viên.stream().forEach(student1 -> { System.out.println(student1.name); System.out.println(student1.age); System.out.println(student1.address); });

bộ lọc điều kiện luồng

Sử dụng list.stream().filter() để lọc các điều kiện, đó làĐÚNG VẬY Câu lệnh sau sẽ chỉ được thực thi khi điều kiện được đáp ứng.

List a = new ArrayList<>(); a.add("judy"); a.add("Tom"); a.add(" "); judy.stream().filter(s -> s.equals("judy")).forEach(s -> System.out.println(s)); // Chỉ in khi nó không trống a.stream(); (các) bộ lọc - > !s.isEmpty()).forEach(s -> System.out.println(s));

Phán đoán và lọc đa điều kiện của các đối tượng phức tạp

Sinh viên sinh viên = sinh viên mới(); sinh viên.setAddress("Đường Lujiabang, quận Hoàng Phố, Thượng Hải"); sinh viên.setName("judy"); sinh viên.setAge(26); ); Students.add(student); //biểu thức lambda chỉ in khi học sinh lớn hơn 28 tuổi.stream().filter(student1 -> sinh viên1.getAge()>28).forEach(student1 -> System.out.println(student1.name)); // Nhiều điều kiện được lọc Đồng thời, nó được thiết lập rằng tên sinh viên bắt đầu bằng phần mở đầu và độ dài bằng 3, biểu thức lambda In Students.stream().filter(s->s.getName().startsWith("张")).filter(s-> s.getName().length() = = 3).forEach(System.out::println); Students.stream().forEach(student1 -> { System.out.println(student1.name); System.out.println(student1.age); System.out .println(student1.address });

bản đồ ánh xạ phần tử luồng

SẽsuốiCác phần tử trong luồng được ánh xạ tới luồng khác. Điều này thường được sử dụng sau này. Ví dụ: giá trị trả về mà phương thức nhận được là A, nhưng giá trị nhận được là B.

  1. Chuyển đổi một luồng kiểu Chuỗi thành kiểu Số nguyên
Stream stringStream = Stream.of("1", "2", "3", "4", "5", "6"); stringStream.map(str->Integer.parseInt(str)). forEach(System.out::println);
  1. Chuyển đổi loại bộ sưu tập
    Khi thực hiện xử lý quyền, yêu cầu các quyền không được lặp lại, do đó tập hợp danh sách được chuyển đổi thành tập hợp tập hợp.
List a = new ArrayList<>(); a.add("judy"); a.add("Tom"); a.add(" "); s).collect(Collectors.toSet()).forEach(s -> System.out.printf(s));

Phương thức cần trả về List, nhưng ở đây chỉ có List. Lúc này chúng ta cần nghĩ đến stream().map.

public List queryNamesByIds(List ids){ List Category = this.categoryMapper.selectByIdList(ids); return Category.stream().map(category -> Category.getName()).collect( Collectors.toList()); }

Danh sách<đối tượng="">chuyển đổi thànhDanh sách,TRONGDanh sách<đối tượng="">Đối tượng trong là đối tượng json của Cart

//Truy vấn dữ liệu giỏ hàng (thay đổi List thành List) trả về carts.stream().map(o -> JsonUtils.parse(o.toString(),Cart.class)).collect(Collectors . toList());

luồng hợp nhất hai luồng thành một hợp đồng luồng

Stream streamA = Stream.of("Zhang Wuji", "Zhang Cuishan"); Stream streamB = Stream.of("Cừu đẹp", "Dê dễ chịu" //Phương pháp viết 1 //Stream .concat(streamA,streamB).forEach(System.out::println); //Phương thức ghi 2 Stream result= Stream.concat(streamA,streamB); result.forEach(name-> System.out.println(name));

Bài viết tham khảo

29 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress