| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 645 人关注过本帖
标题:对象数组那里错了
只看楼主 加入收藏
gxl741852
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2010-6-29
结帖率:100%
收藏
已结贴  问题点数:11 回复次数:6 
对象数组那里错了
package javaapplication1;
class gouwu{
String name;
int danjia;
int shuliang;
int sum;
public void fff(int danjia,int shuliang, String name){
this.danjia=danjia;this.shuliang=shuliang;this.name=name;
}
public void gouwu(gouwu a[]){
for (int i=0;i<a.length;i++)
{
sum=sum+a[i].danjia*a[i].shuliang;
}
System.out.print(sum);
}
}

public class Main {
    public static void main(String[] args) {
  gouwu []a=new gouwu[3];
  
  a[0].fff(1, 1, "a");
  a[1].fff(2,2,"b");
  a[2].fff(3, 3, "c");
  gouwu b=new gouwu();
  b.gouwu(a);
}

}
 
 
a[0].fff(1, 1, "a");
  a[1].fff(2,2,"b");
说是这里有问题
搜索更多相关主题的帖子: 对象 
2010-07-27 10:00
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:11 
你没有创建对象,空指针异常
程序代码:
package javaapplication1;

class Gouwu { //类名首字母要大写
    String name;
    int danjia;
    int shuliang;
    int sum;

    public void fff(int danjia, int shuliang, String name) {
        this.danjia = danjia;
        this.shuliang = shuliang;
        this.name = name;
    }

    public void gouwu(Gouwu a[]) {
        for (int i = 0; i < a.length; i++) {
            sum = sum + a[i].danjia * a[i].shuliang;
        }
        System.out.print(sum);
    }
}

public class Main {
    public static void main(String[] args) {
        Gouwu[] a = new Gouwu[3];
        a[0] = new Gouwu();//创建对象
        a[1] = new Gouwu();//创建对象
        a[2] = new Gouwu();//创建对象


        a[0].fff(1, 1, "a");
        a[1].fff(2, 2, "b");
        a[2].fff(3, 3, "c");
        Gouwu b = new Gouwu();
        b.gouwu(a);
    }

}


 

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-07-27 10:27
hsh_1987
Rank: 5Rank: 5
等 级:职业侠客
威 望:4
帖 子:92
专家分:343
注 册:2010-3-30
收藏
得分:0 
gouwu []a=new gouwu[3];
数组元素为空。相当于创建String[] s=new String[3]而没有赋值,所为应该这样写:
        gouwu [] a = new gouwu [3];
        a[0]=new gouwu();
        a[1]=new gouwu();
        a[2]=new gouwu();
        a[0].fff(1, 1, "a");
        a[1].fff(2, 2, "b");
        a[2].fff(3, 3, "c");
这样每个数组元素中就存放了一个对象,

努力很重要,决心比努力更重要...........
2010-07-27 10:44
gxl741852
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2010-6-29
收藏
得分:0 
谢谢
2010-07-27 10:47
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:0 
你的代码有很不规范,建议你参看本版置顶的《JAVA代码规范》

类名首字母要大写
构造函数名与类名一样首字母要大写
其他方法名首字母小写

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-07-27 10:56
dhj125_ly926
Rank: 2
等 级:论坛游民
帖 子:24
专家分:10
注 册:2010-7-26
收藏
得分:0 
学习,学习
2010-07-27 12:19
aufish
Rank: 2
等 级:论坛游民
威 望:1
帖 子:59
专家分:94
注 册:2010-4-22
收藏
得分:0 
回复 2楼 lampeter123
变量名头单不用大写,以后的要大写
2010-07-27 18:41
快速回复:对象数组那里错了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.052389 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved