0

我在 Android 中使用 retrolambda。

我有一个类似下面代码(Java)的类。

public class ContactListViewModel { public String DisplayName; public String PhoneNumber; }

还有一种方法可以返回值,例如 ArrayList<ContactListViewModel>

我只想选择PhoneNumber属性,我想将它转换为数组。

安卓 :

ArrayList<ContactListViewModel> contactList = contactListService.GetContactList(getContext().getContentResolver());
    ArrayList<List> phoneList = contactList.stream().Select(l->l.PhoneNumber).ToArray(); 

以上我该怎么办?

像 C#

    class Program
{
    static void Main(string[] args)
    {
        List<ContactListViewModel> p = new List<ContactListViewModel>();
        var phoneNumberArr = p.Select(l => l.PhoneNumber).ToArray();
    }
}
public class ContactListViewModel
{
    public string DisplayName { get; set; }
    public string PhoneNumber { get; set; }
}

谢谢你。

4

1 回答 1

0

我发现

List<String> phoneList =  contactList.stream().map(arr->arr.PhoneNumber).collect(Collectors.toList());
于 2017-01-10T19:40:47.547 回答