将List <object>转换为List <string>而不是?</string> </object>

时间:2014-01-22 12:19:14

标签: java list

如何在不通过for循环扫描所有元素的情况下将对象列表转换为相应的字符串列表?

2 个答案:

答案 0 :(得分:5)

你可以试试这个:

List<String> variable = (List<String>)(List<?>) yourList;

答案 1 :(得分:1)

在您指定的注释中,您要调用toString()方法。使用番石榴(https://code.google.com/p/guava-libraries/):

可以实现这一点
import com.google.common.base.Function;
import com.google.common.collect.Lists;

import java.util.ArrayList;
import java.util.List;

public class Application {

    public static void main(String[] args) {
        Function<Object, String> objectToString = new Function<Object, String>() {
            public String apply(Object object) {
                return object.toString();
            }
        };
        List<Object> yourList = new ArrayList<Object>();
        yourList.add("foo");
        List<String> strings = Lists.transform(yourList, objectToString);
    }
}