1. 程式人生 > >使用java8的Stream,根據Object某些屬性對List進行篩選。

使用java8的Stream,根據Object某些屬性對List進行篩選。

對物件集合進行處理時,整天for迴圈篩選,感覺跟不上時代。搜了搜,學了學java8的Stream,並用來替代for迴圈篩選。

public class StreamTest {

    public static void main (String[] args) {
        List<Person> persons = Arrays.asList(
                new Person("e1", "l1"),
                new Person("e2", "l1"),
                new Person("e3", "l2"),
                new Person("e4", "l2"),
                new Person("e5", "l3"),
                new Person("e6", "l3"),
                new Person("e7", "l3")

        );
        //.filter(過濾條件)
        //.collect(Collectors.toList()) 把結果蒐集到List之中。
        persons = persons.stream().filter(person -> person.getLastName().equals("l3")).collect(Collectors.toList());
        persons.forEach(person -> {
            System.out.println(person.getName());
        });


    }
}
public class Person {


    private String name;
    private String lastName;

    public Person(String name, String lastName) {
        this.name = name;
        this.lastName = lastName;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }
}

結果:

e5
e6
e7

相關推薦

使用java8的Stream根據Object某些屬性List進行篩選

對物件集合進行處理時,整天for迴圈篩選,感覺跟不上時代。搜了搜,學了學java8的Stream,並用來替代for迴圈篩選。public class StreamTest { public static void main (String[] args) {

java collection.sort() 根據物件的某個屬性list進行排序

1基本型別的list排序/** * 對List物件按照某個成員變數進行排序 * @param list List物件 * @param sortField 排序的屬性名稱 * @param sortMode 排序方式:ASC,DESC 任選其

定義抽象類Shape抽象方法為showArea()求出面積並顯示定義矩形類Rectangle,正方形類Square,圓類 Circle,根據各自的屬性,用showArea方法求出各自的面積在main方法中構造3個調用showArea方法(體現多態)

子類 protected new 都是 package 使用 類指針 3.1 shape 實現多態的三個條件:1.要有繼承2.要有抽象方法重寫3.用父類指針(引用)指向子類對象 重載重寫重定義的區別: 1.重載:在同一個類中進行;  編譯時根據參數類型和個數決定方法調用; 

根據某個條件或者某些條件資料庫進行查詢然後把查詢結果進行分頁顯示

一、.固定條件,直接查詢資料庫,把結果進行分頁顯示出來; 見部落格 https://blog.csdn.net/qq_37591637/article/details/82951647 二、條件不定,查詢資料庫,把查詢結果進行分頁顯示 如下圖;包含四個條件,使用者在選擇的時候可以選擇

Java list根據物件屬性物件進行排序

List<BeanWifiAppoint> list = beanWifiAppointService.findbyWifiName(map); if (!ValidateUtils.isEmptyForCollection(list)) { //根據預約時

如何讀取xml檔案根據xml節點屬性查詢並輸出xml檔案

主要是應用SimpleXML和遞迴函式來根據key值來查詢,並將結果以xml格式輸出。 <?php header("Content-type: text/xml"); //以xml格式輸出檔案 @$key=$_GET['key']; $find=false; //echo $key."<

java中氣泡排序根據物件的屬性排物件

主程式排序: public class TestDmo { public static void main(String[] args) { List list=getData();

python中文分詞使用結巴分詞python進行分詞

php 分詞 在采集美女站時,需要對關鍵詞進行分詞,最終采用的是python的結巴分詞方法.中文分詞是中文文本處理的一個基礎性工作,結巴分詞利用進行中文分詞。其基本實現原理有三點:基於Trie樹結構實現高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG)采用了動態規劃查找最大概率

list進行切片

back bar ada image ros int 十分 n個元素 如果 取一個list的部分元素是非常常見的操作。比如,一個list如下: >>> L = [‘Adam‘, ‘Lisa‘, ‘Bart‘, ‘Paul‘] 取前3個元素,應該怎麽做? 笨

[C#] List進行分組排序後輸出

pos 學生 new C# src key 輸出 分組 groupby Student 類: public class Student { public int ID { get; set; } public string

vue如何根據返回的值元素進行樣式渲染

port ddc 渲染 ima info 計算 優先 efault 不同 1、最終顯示樣式: 需要:根據任務狀態值,顯示不同顏色的原點表示任務狀態,以及對優先級的數據,進行☆標記 2、代碼實現:   在<el-table-column>中需要顯示的內容前面

(java)leetcode717 1位元與2位元字元 即根據不同的長度字元進行解碼(1-bit and 2-bit Characters)

題目描述: 有兩種特殊字元。第一種字元可以用一位元0來表示。第二種字元可以用兩位元(10 或 11)來表示。 現給一個由若干位元組成的字串。問最後一個字元是否必定為一個一位元字元。給定的字串總是由0結束。 示例1: 輸入: bits = [1, 0, 0]

記事本:如何將16進位制數賦給int型變數再按16進位制輸出以及電腦大小端齊方式測試

c和c++版本:          int i=0x12345678;          printf("%hx",i); java版本:      

為二級域名註冊ssl證書並強制使用httpshttp進行跳轉

伺服器上仍然使用nginx進行代理 1.為二級域名申請ssl證書,如blog.yourdomain.com,見前文。 2.在域名解析服務中,為二級域名新增解析記錄 3.nginx預設讀取/etc/nginx/conf.d/*.conf 在conf.d下建立二級域名對應的配置檔案如vi blog.c

Java中Lamda表示式List進行排序

public class MainTest { public static void main(String[] args) { List<String> list = Arrays.asList( "2018121207","2018121206","2018121

Kotlinlist進行排序的一種方法

今天看了java排序的方法,自己用kotlin寫了一個小的list的排序,程式碼如下。 1.首先定義一個內部類,用於比較list中兩個數的大小 inner class User : Comparable<User> { var name: String

List進行排序

/** * 對List<Map>進行排序 */private List<Map<String, Object>> OrderBytoList(List<Map<String, Object>> mlist) {My

mysql根據不同的條件資料進行批量修改(navicat)

為財務部門的僱員加薪,5年以下加5%,5年以上加3% UPDATE employee e, ( #篩選出財務部的員工資訊,並作為臨時表 SELECT e.empid, e.sal,

使用HTML標籤的屬性圖片進行旋轉效果

這兩天老大讓我寫一個讓照片翻轉的效果,甚是痛苦,下面是我的一些個人心得 在W3C官方的標準裡,通過transform屬性使物件旋轉的寫法如下:transform: rotate(40deg); /* 其中40是旋轉的角度 */ 可是由於目前幾乎所有的瀏覽器對這個屬性的渲染

分別根據key和valueHashMap進行排序

通過把把Map中的所有Entry存入一個List,然後呼叫collection的sort進行排序操作. Map<Integer, Integer> map = new HashMap<Integer, Integer>(); map.put