NULL_8757512 2008-07-29 18:08
浏览 619
已采纳

由List<object>转型成专属List怎么写?

我再使用

List results = getHibernateTemplate().findByExample(instance);

这条语句的时候就产生了一个类似与以下warning的警告(下面那个是百度知道找的 懒的自己输入了-。-)

The return type List for findAll() from the type NetModeDaoHibernate needs
unchecked conversion to conform to List from the type NetModeDao

其实意思都是一样的,就是说getHibernateTemplate().findByExample(instance) 产生的是一个List

然后我前面是List 它需要一个转型才行。 虽然是个warning,不过看着特别不爽

我尝试了 类似与(List )getHibernateTemplate().findByExample(instance);

这样的各种方法都未果。

请问正经的转型方法是什么样子的呢?
[b]问题补充:[/b]
不用这么麻烦吧。。

这种应该是直接转型就行的,不用在建立数组放里面了 因为本身里面存放的就是就是

MovieTable类型 所以应该隐式转型即可了。

别的地方我都可以直接隐式转型,只有类似于这个地方

就是由函数返回的地方我不知道怎么设置隐式转型。

不过还是谢谢回答。
[b]问题补充:[/b]
//补充。。。。。

我知道aidiyuxin 你说的那些东西

我也知道加入@SuppressWarnings("unchecked") 这个可以忽略

我只是想知道一下怎么把这个函数向下转型成MovieTable 因为试了好几种方法都未果

呵呵

谢谢啦

  • 写回答

3条回答 默认 最新

  • aidiyuxin 2008-07-31 09:52
    关注

    [size=medium]呵呵,楼主客气了
    大家一起讨论下咯
    你最开始用的那个办法就是对的了
    因为[/size]
    [code="java"](List )getHibernateTemplate().findByExample(instance);[/code]
    [size=medium]这样已经把List转化为List了

    其实List的中的Object已经指定为MovieTable了
    你可以这样看看的[/size]
    [code="java"]List list
    for(Object foo : list){
    String className = foo.getClass().getClassName;
    System.out.println(foo);
    }[/code]
    [size=medium]他打印出来的一定是MovieTable,只不过他的类型是jvm动态注入给Object
    所以在编译期间是不知道他的类型的
    [/size]

    [size=medium]ps:
    我比较常些这种,类似框架的东西,或者叫土框架,所以这些东西还是知道一点点的
    呵呵,不知道这么说,你能不能明白,呵呵,说的不好,可以拍砖我[/size]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表