gpt4 book ai didi

java - 从 List> 创建列表

转载 作者:行者123 更新时间:2023-12-02 01:49:31 32 4
gpt4 key购买 nike

我有完整的列表:

List<Pair<String,String>> List = new ArrayList<>();

我想注入(inject)第一个元素(字符串)并创建它的新简单列表:

List<String> localtNameList

如何转换List<Pair<String,String>>数组恢复正常 List <String>使用第一个字符串?

Eran 的答案

在我的模型中,我有:

public List<Pair<String,String>> getArtistsWithPhoto ()
{
List<Pair<String,String>> perfectMapNameAndFoto = new ArrayList<>() ;

if (ituneResult.getListSongs() != null){
for (ResultiTune item : ituneResult.getListSongs() ){

perfectMapNameAndFoto.add(new Pair <String,String> (item.getArtistName(),item.getArtworkUrl100() ));
}
}
if(lastFmResult.getResults().getArtistmatches().getListOfLatsFmArtists() != null) {
for (ArtistLastFm item : lastFmResult.getResults().getArtistmatches().getListOfLatsFmArtists())
perfectMapNameAndFoto.add(new Pair<String, String>(item.getName(), item.getUrl()));
}
return perfectMapNameAndFoto;

}

在我的适配器中:通过实现:'com.annimon:stream:1.2.1'

List<String> localArtistNameList = Stream.of(list).map(Pair::getFirst).collect(Collectors.toList());

埃里克的解决方案

Android 版本的 Pair Class 没有 Eric 提到的 getFirst,所以解决方案是:

p -> p.first

最终工作代码:

Stream.of(list).map(p -> p.first).collect(Collectors.toList());

如果有人想在 Android 中使用 Stream < API 24:

在 Gradle 中:

implementation 'com.annimon:stream:1.2.1'

最佳答案

您可以使用Stream:

List<String> localtNameList = list.stream().map(Pair::getFirst).collect(Collectors.toList());

假设 Pair 有一个 getFirst 方法返回第一个元素。

关于java - 从 List<Pair<String,String>> 创建列表 <strings>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53209301/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com