2 baidu 35975930 baidu_35975930 于 2017.01.06 15:20 提问

java list 转成String数组

List list = shoppingcartDao.selList(userId);查询出来的list,
把list的CommodityId取出来放入数组中,求大神》》》》》(是在select中的)

6个回答

engchina
engchina   Rxr 2017.01.06 15:55
已采纳

假想有个Bean类叫Commodity

public class Commodity {

    private String CommodityId;

    public String getCommodityId() {
        return CommodityId;
    }

    public void setCommodityId(String commodityId) {
        CommodityId = commodityId;
    }
} 

如果你的List里面存储的是Commodity对象

public class Main {

    public static void main(String[] args) {

        // 模拟从数据库中取数据 Begin
        List<Commodity> list = new ArrayList<Commodity>();

        Commodity c1 = new Commodity();
        c1.setCommodityId("c1");
        list.add(c1);

        Commodity c2 = new Commodity();
        c2.setCommodityId("c2");
        list.add(c2);

        Commodity c3 = new Commodity();
        c3.setCommodityId("c3");
        list.add(c3);
        // 模拟从数据库中取数据 End

        if (list != null && list.size() > 0) {
            String[] arr = new String[list.size()];

            for (int i = 0; i < arr.length; i++) {
                arr[i] = list.get(i).getCommodityId();
            }

            for (int i = 0; i < arr.length; i++) {
                System.out.println(arr[i]);
            }
        }
    }
}

输出结果

c1
c2
c3
u012322256
u012322256   2017.01.06 15:30

String[] arr = new String[list.size()];
for(int i = 0; i < arr.length; i++) {
arr[i] = list.get(0).getCommodityId();
}

Anoth
Anoth   2017.01.06 15:34

shoppingcartDao.selList这个方法里的sql是直接select id的吗?可以先把list转成List再用list.toArray()方法得到数组

Anoth
Anoth   2017.01.06 15:36
 List<String>
zx510416
zx510416   2017.01.06 15:43

由于不知道你查出来的对象名字,我就随便取名ShoppingCart吧,里面有个Sting的属性commodityId,那转化代码如下:

      String[] commodityIdArr = list.stream().map(ShoppingCart::getCommodityId).toArray(String[]::new);
baidu_35975930
baidu_35975930   2017.01.06 16:10

u012322256和 engchina的都行, zx510416有点不理解

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!