對應實體類
importlombok.getter;
import
lombok.setter;
@getter
@setter
public
class
student
1.根據字段取出某乙個字段屬性的集合
liststudentlist = new arraylist<>();list
newlist =studentlist.stream().map(student::getage).collect(collectors.tolist());
for(student student : newlist)
2。list根據某個字段公升序排序
liststudentlist = new arraylist<>();list
newlist =studentlist.stream().sorted(comparator.comparing(student::getage)).collect(collectors.tolist());
for(student student : newlist)
3.list根據某個字段排序降序
listlist = new arraylist<>();list = list.stream().sorted(comparator.comparing(student::getage).reversed()).collect(collectors.tolist());
4.獲取某一字段屬性值對應的資料集合
listresultlist =studentlist.stream().filter((student stu) ->area.equals(stu.getage()))
.collect(collectors.tolist());
5.根據某個字段值獲取出對應的物件
student stu =studentlist.stream().filter(p -> "2018-08-12 12:10".equals(p.getbirthday()))
.findany().orelse(
null);
6.對集合元素去重
listnamelist = new arraylist<>();namelist = namelist.stream().distinct().collect(collectors.tolist());
7.對集合某乙個屬性進行求和
liststulist = new arraylist<>();double totalage = stulist.stream().collect(collectors.summingdouble(student::getage));
8。獲取集合中的某乙個屬性的資料集合並去重
// 所有的ip資訊物件集合listnetinfolist =netipservice.querynetiplist();
// 從所有ip資訊物件集合中根據機房id過濾出所有機房id不同的資料物件,並根據機房id去重
list
distinctiproomlist =netinfolist.stream().collect(collectors
.collectingandthen(collectors.tocollection(() -> new treeset<>(
comparator.comparing(netiipinfo::getiproomid))), arraylist::
new));
**是很簡答,很優雅的
解釋一下
list.stream(): 是把list集合轉化為stream集合
sorted(): 進行排序,其中comparator.comparing(student::getage)表示按照年紀排序,
.reversed()表示是逆序,因為預設情況下,不加.reversed 是公升序的
collect(collectors.tolist()): 再次將排序後的stream集合轉化為list集合
.findany()表示將其中任意乙個返回;
.orelse(null)表示如果乙個都沒找到返回null
distinct() 對集合元素或物件去重
summingdouble() 對集合元素進行求和為double型別資料
C ArrayList 和 List 集合型別
arraylist 或 list 物件是較為複雜的陣列。arraylist類和list泛型類提供多數 system.collections 類都提供的但 array 類未提供的一些功能。例如 另一方面,array提供了arraylist和list所缺少的某些靈活性。例如 需要陣列的大多數情況都可以改...
List集合基本處理
1.迴圈list中的所有元素然後刪除重複 for int i 0 i list.size 1 i 2.通過hashset踢除重複元素 hashset h new hashset list list.clear list.addall h 3.刪除arraylist中重複元素,保持順序 for ite...
List集合分頁處理的方法
第一種方法是迴圈擷取某個頁面的資料 迴圈擷取某頁列表進行分頁 param datalist 分頁資料 param pagesize 頁面大小 param currentpage 當前頁面 public static listpage listdatalist,int pagesize,int cur...