欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

StringBuffer和Double.ValueOf一起用导致的错误 博客分类: java基础  

程序员文章站 2024-03-26 11:07:23
...
   StringBuffer虽然是同步的,然而如果不注意它的用法,则会出现一些问题。比如
StringBuffer stringBuffer=new StringBuffer("")
stringBuffer.append(1).append(2);
Double dd=Double.ValueOf(stringBuffer.toString);

这三句咋一看是没什么问题的,但是一放到循环中就容易出问题,没toString之前,stingBuffer的值是随时可能瞬时失败而无法获得的,所以,在用到StringBuffer的值前,最好先toString一下。不然,容易出问题。比如,上面的那三句在循环中基本上会出现
数值转换异常。应该改为:

StringBuffer stringBuffer=new StringBuffer("")
stringBuffer.append(1).append(2);
String strResult=stringBuffer.toString;
Double dd=Double.ValueOf(strResult);