使用lambda表示式對hashmap按value物件的時間屬性進行降序排序
hashmap
usermap =
newhashmap
<
>()
; usermap.
put(1,
newuser
("張三",8
,new
date()
.gettime()
)); usermap.
put(2,
newuser
("李四",10
,new
date()
.gettime()
)); usermap.
put(3,
newuser
("王五",20
,new
date()
.gettime()
)); usermap.
put(4,
newuser
("趙六",15
,new
date()
.gettime()
)); list
> list =
newarraylist
<
>
(usermap.
entryset()
); collections.
sort
((a.
getvalue()
.gettime()
!=null ? a.
getvalue()
.gettime()
.gettime()
:0)>
(b.getvalue()
.gettime()
!=null ? b.
getvalue()
.gettime()
.gettime()
:0)?
-1:1
);//list轉map
usermap=list.
stream()
.collect
(collectors.
tomap
(map.entry:
:getkey,map.entry:
:getvalue,
(oldvalue,newvalue)
-> newvalue, linkedhashmap:
:new))
;
排序後list是排序後的結果,但如果還想返回排序後的usermap,則需要把list轉化成map,才能使排序生效
@data
public
class
user
}
lambda表示式 lambda表示式
1.概述 c 11 中的 lambda 表示式用於定義並建立匿名的函式物件,以簡化程式設計工作。lambda 的語法形式如下 函式物件引數 操作符過載函式引數 mutable 或 exception 宣告 返回值型別可以看到,lambda 主要分為五個部分 函式物件引數 操作符過載函式引數 muta...
Linq表示式和Lambda表示式用法對比
什麼是linq表示式?什麼是lambda表示式?前一段時間用到這個只是,在網上也沒找到比較簡單明瞭的方法,今天就整理了一下相關知識,有空了再仔細研究研究 public program ling表示式 var stus1 from s in allstudent where s.name 王二 sel...
Lambda表示式和Lambda表示式樹
原版來自 linq學習筆記之二 lambda表示式和lambda表示式樹 lambda 表示式 lambda expressions 是linq實現的另一特性。lambda表示式的作用就是使用使用函式式語法,將方法實現關聯到委託例項。在使用查詢表示式 query expressions 時,查詢表示...