首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java.lang.ClassCastException: java.lang.String

java.lang.ClassCastException: java.lang.String
EN

Stack Overflow用户
提问于 2014-01-28 05:02:36
回答 2查看 685关注 0票数 0

我使用hibernate,我有这个java方法:

代码语言:javascript
复制
 public Integer getNumber(String user) {
            SQLProperties properties = new SQLProperties();



            String query = "select out_count('"+user+"')";
            query += SQLUtils.getProperties(properties);


            SQLQuery sqlQuery = this.getSession().createSQLQuery(query);
            sqlQuery = SQLUtils.addScalar(sqlQuery, properties);

            List<Integer> list = sqlQuery.list();

                 System.out.println("val : "+list.get(0));
            return list.get(0);
        }

但是当我测试时,我会遇到这样的错误:

代码语言:javascript
复制
val : 200
java.lang.ClassCastException: java.lang.String
    at com..hibernate.model.dao.testDAO.getNumber(Unknown Source)
EN

回答 2

Stack Overflow用户

发布于 2014-01-28 05:07:05

检查返回的实际类型。您将从该查询中获得一个字符串。使用Integer.parseInt()将其转换为整数

票数 0
EN

Stack Overflow用户

发布于 2014-01-28 05:07:46

看起来你用的是List<String>,而不是List<Integer>。可能会出现未检查的警告,不是吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21391592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档