日期:2014-05-20  浏览次数:20719 次

二进制转十进制的代码
public class AS {
double sum=0;

String toint(String binstr)
{
String binstr1;

for (int i=binstr.length();i>=1;i--)
{

binstr1=binstr.substring(binstr.length()-i,binstr.length()-i+1);

sum = sum+(Integer.parseInt(binstr1)*Math.pow(2,i-1)); 

}
return String.valueOf(sum);



  发现运行之后多次单击按钮 转后的数会成倍增长 请高手给指教下

------解决方案--------------------
你应该把 double sum=0; 这句放在 String toint(String binstr) 方法中:
Java code


public class AS {
    String toint(String binstr) {
        double sum=0;
        String binstr1;

        for (int i=binstr.length();i>=1;i--) {
            binstr1=binstr.substring(binstr.length()-i,binstr.length()-i+1);
            sum = sum+(Integer.parseInt(binstr1)*Math.pow(2,i-1)); 

        }
    return String.valueOf(sum);
}

------解决方案--------------------
楼主想干嘛啊 楼主说清楚点
还有代码求助的时候加点注释