Java创建实例数组
我这里的代码有问题Java创建实例数组,java,Java,我这里的代码有问题 Seller[] seller = new Seller[numberOfSellers]; // Declared global // Some operations here seller[i].setJoinDate(joinDate); seller[i].setNumberOfPost(numberOfPost); seller[i].setCustomerReview(customerReviewCount); seller[i].setS
Seller[] seller = new Seller[numberOfSellers]; // Declared global
// Some operations here
seller[i].setJoinDate(joinDate);
seller[i].setNumberOfPost(numberOfPost);
seller[i].setCustomerReview(customerReviewCount);
seller[i].setSafeTag(safeTag);
然后我用这些方法创建了这个Seller类
public void setJoinDate( String joinDate ) { this.joinDate = joinDate; }
public void setNumberOfPost( int numberOfPost ) { this.numberOfPost = numberOfPost; }
public void setCustomerReview( int customerReview ) { this.customerReview = customerReview; }
public void setSafeTag( String safeTag ) { this.safeTag = safeTag; }
上面是我的缩写代码。如果不清楚,请告诉我在哪里
基本上我创建了一个实例数组。然后我将设置数据
假设joinDate
,numberOfPost
,customerReviewCount
,safeTag
,最后numberOfSellers
没有问题
我遇到的问题是实例的数据设置。这是setJoinDate
,setNumberOfPost
,setCustomerReview
,setSafeTag
。有人能帮我发现我的错误吗
当我执行程序时,它会给我这个错误
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0
at fyp.draft.pkg1.Design.actionPerformed(Design.java:247)
您需要初始化阵列:
for(int i=0;i<numberOfSellers;i++)
{
seller[i] = new seller();
}
for(int i=0;inumberOfSellers在运行代码时似乎未设置或等于零。
例如:
导致
线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:5由于提供的异常中的索引等于0
,因此您的变量numberOfSellers
似乎也等于0
。这意味着您的数组Sellers
始终为空
BTWJava中没有术语global
。您的意思是数组是类的静态字段还是仅仅是对象变量(字段)?我认为您的编号numberOfSellers
已初始化为0
您可以尝试以下代码
int numberOfSellers = 3;
Seller[] seller = new Seller[numberOfSellers]; // Declared global
for(int i = 0 ; i<seller.length ; i++){
seller[i] = new Seller();
seller[i].setJoinDate(joinDate);
seller[i].setNumberOfPost(numberOfPost);
seller[i].setCustomerReview(customerReviewCount);
seller[i].setSafeTag(safeTag);
}
int numberOfSellers=3;
卖方[]卖方=新卖方[numberOfSellers];//声明为全局
对于(int i=0;i在Design.java:247
numberOfSellers在哪里初始化?这是seller[i]所在的行。setJoinDate(joinDate);
located@PakkuDon它位于Seller[]Seller=新卖家[numberOfSellers]之前
只需向我们显示您对numberOfSellers的初始化
我按照您所说的做了,但仍然在线程“AWT-EventQueue-0”java.lang.ArrayIndexOutofBounds中得到一个错误异常异常:0
我的问题已经解决。我的问题是我声明了Sellers[]Seller=new Seller[numberOfSellers]在错误的地方。我真的很抱歉问了这么一个愚蠢的问题,浪费了你们的时间。但你们的解决方案仍然帮助我找到了一些错误提示。
int numberOfSellers = 3;
Seller[] seller = new Seller[numberOfSellers]; // Declared global
for(int i = 0 ; i<seller.length ; i++){
seller[i] = new Seller();
seller[i].setJoinDate(joinDate);
seller[i].setNumberOfPost(numberOfPost);
seller[i].setCustomerReview(customerReviewCount);
seller[i].setSafeTag(safeTag);
}