如何使用retrolambda将类的属性转换为数组

时间:2017-01-10 19:02:20

标签: android retrolambda

我在Android中使用retrolambda。

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

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

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

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

android:

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; }
}

谢谢。

1 个答案:

答案 0 :(得分:0)

我找到了

List<String> phoneList =  contactList.stream().map(arr->arr.PhoneNumber).collect(Collectors.toList());