/*
* @(#) Test.java 1.0 2011-12-13
*
* (c) Copyright 2011 sm SCMS
*
* FILENAME : Test.java
* PACKAGE : com.huateng.bo
* CREATE DATE : 2011-12-13
* AUTHOR : smshen
*/
package com.huateng.bo;
/*******************************************************************************
* #(c) sm SCMS
*
* 功能说明:
* 2011-12-13 上午9:15:09 smshen 创建文件
*
* 修改说明: 创建文件
* 2011-12-13 上午9:15:09 smshen 修改文件
*
******************************************************************************/
public class Test {
/**
* 功能 :
* 开发:smshen 2011-12-13
* @param args
*/
public static void main(String[] args) {
//不知double如何计算加法
double a = 123.98;
double b = 2.1;
System.out.println(a+b);
//超过128,计算的结果就会出现偏差
double c = 234.45;
double d = 3.2;
System.out.println(c+d);
//这是我想到的解决方法
System.out.println((doubleCalc("234.45") + doubleCalc("3.2"))/100);
}
private static double doubleCalc(String str) {
if (str.indexOf(".") >= 0) {
return Double.valueOf(str.substring(0, str.indexOf("."))) * 100
+ Double.valueOf(str.substring(str.indexOf("."))) * 100;
} else {
return Double.valueOf(str) * 100;
}
}
}