如何将对象数组转换为字符串数组?

时间:2011-11-11 13:07:41

标签: object collections hashmap

我已经将hashmap更改为集合,将集合更改为对象,现在我需要将对象转换为String。无论是这种方式还是比这更好的方式都是非常值得注意的。

Collection<String> t;
        Collection<String> n;
        String[] names;
        String[] types;
        Object[] foo;
        Object[] doo;
  HashMap<Integer, String> typehashmap=new HashMap<Integer, String>();
           HashMap<Integer, String> namehashmap=new HashMap<Integer, String>();

      t= typehashmap.values();
      n= namehashmap.values();

        foo=t.toArray();
        doo=n.toArray();
      for(int i=0;i<t.size();i++){
 error-->           types[i]=(String) foo[i];
  error-->               names[i]=(String) doo[i];
      }

3 个答案:

答案 0 :(得分:0)

只需使用HashMap.values()。toArray()例如:

String[] names = namehashmap.values().ToArray(new String[namehashmap.size()]);
String[] types = typehashmap.values().ToArray(new String[typehashmap.size()]);

答案 1 :(得分:0)

假设“error”是一个ArrayIndexOutOfBoundsException“,你需要在向它们添加任何内容之前分配数组。还有另一个toArray方法可以提供帮助:

String[] types = typehashmap.values().toArray(new String[typehashmap.size()]);

答案 2 :(得分:0)

这可能是编译错误!在使用之前,不要初始化类型数组和名称数组。一楼的方法是解决问题的好方法。