首页 新闻 搜索 专区 学院

Java 解析出泛型字符串 到泛型集合 求助

0
[已解决问题] 解决于 2015-06-04 00:40

例字符串  "1,2,3,4,5" 输出为 List<Integer> 或者 List<String>

是需要动态泛型 可以输入指定的基本数据类型 输出 List<?>

 

kolnick的主页 kolnick | 初学一级 | 园豆:12
提问于:2015-05-08 01:05
< >
分享
最佳答案
0
@SuppressWarnings("unchecked")
    public static List<? extends Number> parsePrameterWithNumber(String param, String sep, Class clsName) {

        if (param != null && sep != null) {
            List<Number> list = new ArrayList<Number>();
            StringTokenizer st = new StringTokenizer(param, sep);

            while (st.hasMoreTokens()) {
                String val = st.nextToken();
                if (clsName.getName().endsWith("java.lang.Integer")) {
                    list.add(Integer.valueOf(val));
                } else if (clsName.getName().endsWith("java.lang.Double")) {
                    list.add(Double.valueOf(val));
                } else if (clsName.getName().endsWith("java.lang.Float")) {
                    list.add(Float.valueOf(val));
                } else if (clsName.getName().endsWith("java.lang.Short")) {
                    list.add(Short.valueOf(val));
                } else if (clsName.getName().endsWith("java.lang.Long")) {
                    list.add(Short.valueOf(val));
                }
            }
            return list;
        }
        return null;
    }
kolnick | 初学一级 |园豆:12 | 2015-06-04 00:39
其他回答(2)
0

public static void main(String[] args) {
System.out.println("Test string to list");

String str1 = new String("1,2,3,4,5");

String[] strList = str1.split(",");

for(String temp : strList) {
System.out.println(temp);
}
}

 

转成String数组后,再怎么转换就看需要了~

changnian | 园豆:202 (菜鸟二级) | 2015-05-08 17:19

是直接生成List泛型的返回类型

支持(0) 反对(0) kolnick | 园豆:12 (初学一级) | 2015-05-08 19:48
0
    public static List<String> getList(String str){
        List<String> list = new ArrayList<String>();
        String [] array = str.split(",");
        for (int i = 0; i < array.length; i++) {
            list.add(array[i]);
        }
        return list;
    }
守正不出奇 | 园豆:82 (初学一级) | 2015-05-18 11:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册