中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現java 8 Stream處理

發布時間:2022-01-11 16:21:40 來源:億速云 閱讀:146 作者:柒染 欄目:編程語言

這篇文章將為大家詳細講解有關如何實現java 8 Stream處理,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

package staticTest;

import java.util.Arrays;
import java.util.Collection;

public class Streams {
 private enum Status {
  OPEN, CLOSED
 };

 private static final class Task {
  private final Status status;
  private final Integer points;

  Task(final Status status, final Integer points) {
   this.status = status;
   this.points = points;
  }

  public Integer getPoints() {
   return points;
  }

  public Status getStatus() {
   return status;
  }

  @Override
  public String toString() {
   return String.format("[%s, %d]", status, points);
  }
 }

 public static void main(String args[]) {
  final Collection<Task> tasks = Arrays.asList(
    new Task(Status.OPEN, 5),
    new Task(Status.OPEN, 13),
    new Task(Status.CLOSED, 8)
    );

  // Calculate total points of all active tasks using sum()
  final long totalPointsOfOpenTasks = tasks.stream().filter(task -> task.getStatus() == Status.OPEN)
    .mapToInt(Task::getPoints).sum();

  System.out.println("Total points: " + totalPointsOfOpenTasks);
 }

}

處理過程

task集合被轉化為stream流對像,通過filter過濾數據,只取status為OPEN的。

mapToInt操作通過Task::getPoints這種方式調用每個task實例的getPoints方法把Task的stream轉化為Integer的stream。

最后,用sum函數把所有的分數加起來,得到最終的結果。

關于如何實現java 8 Stream處理就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临清市| 冷水江市| 上蔡县| 天津市| 奎屯市| 乌海市| 灯塔市| 永嘉县| 杭锦后旗| 大兴区| 靖远县| 鄂温| 安乡县| 五寨县| 永顺县| 苗栗市| 沅江市| 澄城县| 忻州市| 扶沟县| 远安县| 金堂县| 白玉县| 蓬安县| 凤翔县| 那曲县| 达日县| 天峻县| 台北县| 广宗县| 花莲县| 扶绥县| 湛江市| 金门县| 泽州县| 马公市| 闽清县| 张家川| 云梦县| 建平县| 永胜县|