24小时热门版块排行榜    

查看: 1170  |  回复: 5

楚明娟

新虫 (小有名气)

[求助] 请大家帮忙找找问题! 已有1人参与

源程序如下:
import java.util.List;

public class AverageArrary {
        public static double useArray(List list)
        {
                double sum=0;
                double average=0;
                int m = list.size();
                for (int i = 0; i < m; i++) {
                        sum +=  Double.parseDouble(list.get(i).toString()) ;// 每个元素值累加
                        average = sum/m;
        }
                return average;

    }
        public static void main(String[] args) throws ClassNotFoundException

        {
                List lista=QueryDesc.showUser();
                double result=useArray(lista);
                System.out.println(result);
        }
}

执行后出现了这样的提示:
创建驱动成功!
连接数据库成功!
Exception in thread "main" java.lang.NumberFormatException: For input string: "Water.UserVo@16fa474"
        at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
        at java.lang.Double.parseDouble(Unknown Source)
        at Water.AverageArrary.useArray(AverageArrary.java:12)
        at Water.AverageArrary.main(AverageArrary.java:22)
问题应该出在强制类型转换那里即   sum +=  Double.parseDouble(list.get(i).toString()) ;// 每个元素值累加 这句话对吗?
刚刚接触这个,请高手们指导一下吧。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

rbs

木虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
楚明娟: 金币+5, 有帮助, 谢谢啦! 2014-07-14 10:01:09
List里面是什么内容?
这个错误基本上是因为你要转换的字符串并非double形式。
2楼2014-05-08 07:51:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

楚明娟

新虫 (小有名气)

引用回帖:
2楼: Originally posted by rbs at 2014-05-08 07:51:29
List里面是什么内容?
这个错误基本上是因为你要转换的字符串并非double形式。

list里边的数据不是对象object类型吗?我要将它强制转换成double型。
3楼2014-05-08 11:13:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

rbs

木虫 (小有名气)

【答案】应助回帖

String "1.234"是可以被转成double,
但String "ABCD"转double就会抛出异常。
所以我说你的List里面的元素可能不是浮点数的形式!!!
不是随便什么类型都能转double的。
4楼2014-05-09 08:19:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

楚明娟

新虫 (小有名气)

引用回帖:
4楼: Originally posted by rbs at 2014-05-09 08:19:45
String "1.234"是可以被转成double,
但String "ABCD"转double就会抛出异常。
所以我说你的List里面的元素可能不是浮点数的形式!!!
不是随便什么类型都能转double的。

嗯嗯,解决了呢,是我没有真正理解list的用法,谢谢大家啦!
5楼2014-05-09 21:02:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cld378632668

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by rbs at 2014-05-09 08:19:45
String "1.234"是可以被转成double,
但String "ABCD"转double就会抛出异常。
所以我说你的List里面的元素可能不是浮点数的形式!!!
不是随便什么类型都能转double的。

String "1" 转化成double是不是会报错?
6楼2015-02-21 19:27:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 楚明娟 的主题更新
信息提示
请填处理意见