首页 > 编程知识 正文

to-do-list,list常用方法

时间:2023-05-05 10:32:36 阅读:176093 作者:101

//transform实现: listnum list=lists.transform (maplist,s-integer.valueof ) s.get ) ' valueitem ' );

//恢复: List mapList=Lists.newArrayList (;

Map map1=Maps.newHashMap (;

map1.put('nameitem )、'香蕉';

map1.put(valueitem ),2 );

maplist.add(map1;

Map map2=Maps.newHashMap (;

map2.put('nameitem )、'香蕉';

map2.put(valueitem ),3 );

maplist.add(map2;

Set set=new HashSet (;

List value1=mapList.stream (

. map(o-{

Optional option=o.entrySet ().stream ) )。

. findany(//.findany )的获取是Optional,对Optional调用map方法获取的是Optional,Optional的值为null,调用orElse方法也没有问题

. filter(m-m.Getkey ) ).equals ) ' valueitem ' ) )

. map(I-{

Object value2=i.getValue (; returnvalue2;

也可以使用//.orElse (' ' )//.orElse

option.if present (r-set.add (integer.value of (r ' ) )//直接调用(如果存在)

returnoption.get (;

}.collect(collectors.tolist ) );

system.out.println('-1-'set; //2,3

system.out.println('-1-'value1);

}

转自: https://blog.csdn.net/weixin _ 42201566/article/details/81513769

Lists.transform :可以轻松地从一种类型的list转换为另一种类型的list。

使用场景:

1、取出某个List的所有map的某个key所对应的value值并返回新的List

Map map=Maps.newHashMap (;

map.put('1,' test1);

map.put('2,' test2);

Map map2=Maps.newHashMap (;

map2.put('1',' test3' );

map2.put('4,' test2);

List list2=Lists.newArrayList (;

list2.add(map );

list2.add(map2;

list list3=lists.transform (list 2,s-s.get('1);

list3. foreach (s-system.out.println ) );

2 .通常可以使用Lists.transform检索对象list的属性并返回新的list,如下所示

publicstaticvoidmain (string [ ] args ) {

list result list=lists.new ArrayList (newresult (1,' test1 ',newresult ) 2,' test2',new result ) 3,' test3' //

list namelist=lists.transform (result list,tuple -tuple.getNameStr () );

namelist.foreach (s-system.out.println ) );

system.out.println('========' );

resultlist.foreach(result-{

result.setnamestr(reset );

);

namelist.foreach (s-system.out.println ) );

}classResult{privateInteger id; 私有字符串名称; publicresult(integerid,String nameStr ) {this.id=id; this.nameStr=nameStr;

}公共集成器getid () {returnid;

}publicvoidsetid(integerid ) {this.id=id;

}publicString getNameStr () {returnnameStr;

} publicvoidsetnamestr (string namestr ) {this.nameStr=nameStr;

}

}

结果:

test1

test2

test3

===================

重置

重置

重置

结论:

Lists.transform ()处理的list的值发生变化时(Lists.transform ) )的处理结果也会发生变化

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。