我从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”错误。
答案 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数据类型?