数字太长,toString 乱了 你这返回的 toString() 之前的是什么? 打印出来看看 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你试一试这个方法:template<typename T> static size_t Convert (char buf[], const T value) { static const char digits[] = "9876543210123456789"; static const char* zero = digits + 9; T i = value; char* p = buf; do { int lsd = static_cast<int>(i % 10); i /= 10; *p++ = zero[lsd]; } while (i != 0); if (value < 0) { *p++ = '-'; } *p = '\0'; std::reverse (buf, p); // #include <algorithm> return p - buf; static inline void IntToString (std::string& out, const int value) .{ char buf[32]; Convert<int> (buf, value); out.append (buf); } this.getSession().createSQLQuery(sql)这个结果是个object数组 你先确保this.getSession().createSQLQuery(sql) 得到的结果能用Long型接收,然后再去toString(); 我加了uniqueResult(),现在应该是数字太长了 现在的情况是长度肯定是超过Long的 就是select的那个数字你能确定吗, 就是select的那个数字你能确定吗,你说的是代码还是查询结果查询结果是哪个数字,代码的话debug如果打印的话会默认toString方法变成这样[B@b6e21b 是对象,可是在转toString的时候本应该是00000000566809088但是却变成了[B@b6e21b这种 首先,你必须了解toString()方法,下面是Object的toString()方法: public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()); }他的默认输入是这样的,因为是对象,且没有覆盖toString()方法的情况下,会调用父类的toString()方法,所以输出为:[B@b6e21b;你的查询语句返回实际是String对象,所以调用String的toString()方法,其实也是调用Object的toString()方法,这就是你为什么会看到@符号的原因, restlet集成spring的问题,求解啊! Spring事务 el表达式问题 这个错误的原因是什么?高分悬赏提供正确解决方案的朋友 局部刷新和MVC同时使用的问题 有玩uddi的吗? windows2003+tomcat6.0.14+江民杀毒软件服务器蓝屏,请大侠们看看问题怎么解决。谢谢! 谁用过spring2.0的新技术spring portlet mvc技术吗? CMP2.0+WebLogic6.1环境下可以实现EJB-QL的动态创建吗? 请问怎样定时启动servlet? struts2上传时如何知道上传文件的顺序 移动cmpp2.0华为的软件包开发遇到上行问题?
你试一试这个方法:template<typename T>
static size_t Convert (char buf[], const T value)
{
static const char digits[] = "9876543210123456789";
static const char* zero = digits + 9;
T i = value;
char* p = buf;
do
{
int lsd = static_cast<int>(i % 10);
i /= 10;
*p++ = zero[lsd];
} while (i != 0);
if (value < 0)
{
*p++ = '-';
}
*p = '\0';
std::reverse (buf, p); // #include <algorithm>
return p - buf;
static inline void IntToString (std::string& out, const int value)
.{
char buf[32];
Convert<int> (buf, value);
out.append (buf);
}
你能确定吗,
你能确定吗,
你说的是代码还是查询结果
查询结果是哪个数字,代码的话debug
如果打印的话会默认toString方法变成这样
[B@b6e21b
但是却变成了[B@b6e21b这种
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
他的默认输入是这样的,因为是对象,且没有覆盖toString()方法的情况下,会调用父类的toString()方法,所以输出为:
[B@b6e21b;
你的查询语句返回实际是String对象,所以调用String的toString()方法,其实也是调用Object的toString()方法,这就是你为什么会看到@符号的原因,