添加不同数据类型的数组并将其转换为列表

时间:2018-11-30 01:49:10

标签: java arrays list

我有一个数组CustomClass[] classes。我想要一种简单的方法将其添加到List<String>,为此,我必须调用方法CustomClass#getName(),该方法返回一个String

应该是这样的:

    for (CustomClass class : classes) {
        list.add(class.getName());
    }

有单行方法吗?

2 个答案:

答案 0 :(得分:8)

如何使用Arrays.stream()

List<String> list = Arrays.stream(numbers)
                          .map(String::valueOf)
                          .collect(Collectors.toList());

将流式传输Array,将其转换为String,然后将其收集到List<String>


或者现在您已经对问题进行了编辑以包括一个班级:

List<String> list = Arrays.stream(classes)
                          .map(Foo::getName)
                          .collect(Collectors.toList());

假设您的课程名为Foo,并且具有getName方法

答案 1 :(得分:2)

对于修改后的问题,答案基本相同:

Arrays.stream(classes).map(clz -> clz.getName()).collect(Collectors.toList());