请问List<String,Object> 怎么转 List<String,String> ?

后台查询出来的是一个List(String , Object) 集合,集合里面有(String,String)、(String,Integer)、(String,Date),
请问怎么统一转为List(String,String)?

自己循环遍历进行转换吧,这个强制转换要报异常的……

以下僅供參考。 建議可以的話,在SQL裏事前轉換好。直接傳String類型的結果給Java。

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OSI {

    public static void main(String[] args) {

        Date d = new Date();
        int i = 0;
        String s = "a";

        List<Object> l = new ArrayList<Object>();
        l.add(d);
        l.add(i);
        l.add(s);

        List<String> l2 = new ArrayList<String>();

        for(int j = 0;j<l.size();j++){
            Object o = l.get(j);
            if(o instanceof Integer){
                l2.add(String.valueOf(o));
            } else if(o instanceof Date){
                l2.add(new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format((Date)o));
            } else {
                l2.add((String)o);
            }
        }

        for(int k = 0;k<l2.size();k++){
            System.out.println(l2.get(k));
        }
    }
}

这个不可以直接转,设想一下:如果是object中的数据有一个类型是Map的话,你转String的时候会不会报错。所以要获取之后再转

小转大直接转,大转小要强转