[求助] 关于Map的类型转换

csuwzc 2014-01-24 10:16:19
有个方法返回的参数是 Map<Object, Object>,但实际的类型是 Map<String, String>,请问有什么办法能高效的转换成实际类型,强制类型转换不管用。
...全文
1697 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanding_ 2014-01-26
  • 打赏
  • 举报
回复
public class TestT<T> { static Map<Object,Object> map = new HashMap<Object, Object>(); public T f(String[] args) { map.put("x","x"); TestT<String> testT = new TestT<String>(); T str = (T)map.get("x"); return str; } } 给你参考下
teemai 2014-01-25
  • 打赏
  • 举报
回复
取出来再转成你要的
kiyoki 2014-01-25
  • 打赏
  • 举报
回复
java的本来就是假泛型,你骗一骗他就好 先创建一个变量去除泛型,再在下面强加泛型 public static void main(String[] args) { Map map = getMap();//抛弃泛型 Map<String,String> dMap = (Map<String,String>)map;//把泛型加回去 System.out.println(map.get("goodest")); //OK了 } public static Map<Object,Object> getMap(){ Map map = new HashMap<String, String>(); map.put("goodest", "badest"); return map; }
pcmlose 2014-01-24
  • 打赏
  • 举报
回复
最笨的方法,遍历toString
卡卡吉利 2014-01-24
  • 打赏
  • 举报
回复
new一个对象
简易人 2014-01-24
  • 打赏
  • 举报
回复
楼主,把你整段发我看看
Lsheep 2014-01-24
  • 打赏
  • 举报
回复
你说的不管用是不是直接Map<String, String> mapStringString = (Map<String, String>)mapObjectObject了?这样肯定不行了。 你可以把object取出来再转,读的时候无所谓,反正传什么进去都会被转成Object的。
长笛党希望 2014-01-24
  • 打赏
  • 举报
回复
貌似就算是Map<Object, Object> ,去存放String-String ,也不会出错吧。
Test_LD 2014-01-24
  • 打赏
  • 举报
回复
String也是Object类型,不转的话会map存取会有很大影响?这样转好像没什么意义,另在定义方法的时候就限定是String,

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧