Guava和SQL:将int转换为Ints

时间:2012-05-15 11:15:52

标签: java guava

我从MSSQL服务器中提取数据,其余的应用程序在很大程度上依赖于番石榴。有没有办法将int从SQL转换为Ints(番石榴)?我试过了

Primitives.wrap(Ints.class).cast(resultSet.getInt(3)))

并获取“java.util.concurrent.ExecutionException:java.lang.ClassCastException:无法将java.lang.Integer强制转换为com.google.common.primitives.Ints”错误。

2 个答案:

答案 0 :(得分:4)

Ints是一个静态实用程序类,它没有实例。它提供了操作原始int的常用方法。如果你需要将它包装在一个类中,那么自然的是java.lang.Integer

Primitives.wrap()是一种元效用。它告诉您 class 实现给定的包装器。如果您提供原始int.class,则会返回Integer.class。同样,它操纵类,它不包装原始值。

如果你想包装一个int,你只需要:

int fooToWrap = 42;
Integer fooWrapped = Integer.valueOf(fooToWrap);

你想要完成什么?

鉴于你的评论,我认为你想要的是:

Integer.valueOf(resultSet.getInt(3))

答案 1 :(得分:0)

如果我没有弄错的话,你只能做一个这样的演员,如果int延伸整数。 您是否尝试将其转换为Integer对象,而不仅仅是int数据类型?