我对如何应用固定数组的'sets'和'gets'方法有点混淆。以下是我在Netbeans中的一些工作:
//creating 5 fixed arrays of size 10
private String [] itemnames = new String [10];
private String [] itemcodes = new String [10];
private String [] category = new String [10];
private String [] quantity = new String [10];
private Double [] sellingprice = new Double [10];
//initialising each array to null in the class constructor
for (int i = 0; i < 10; i++){
itemnames[i] = "";
}
for (int i = 0; i < 10; i++){
itemcodes[i] = "";
}
for (int i = 0; i < 10; i++){
category[i] = "";
}
for (int i = 0; i < 10; i++){
quantity[i] = "";
}
for (int i = 0; i < 10; i++){
(Double.parseDouble(sellingprice[i])) = 0;
}
现在,我陷入了set方法和每个数组的get方法。有什么帮助吗?
谢谢:)
答案 0 :(得分:2)
根据你想要做的(或稍后能够做到的)数组来设置和获取方法。
如果您希望能够将数组检索到另一个类中,您可以创建一个这样的get方法:
public String[] getItems()
{
return itemnames;
}
另一方面,如果您只希望其他类获取数组中的特定项,则一种方法可能如下所示:
public String getItemMatchingCode(String code)
{
for(int i = 0; i < ARR_LENGTH; i++)
{
if(code.equals(itemcodes[i]) return itemnames[i];
}
}
或者您可能希望根据构思设置和获取不同的值:
public String getItemnameAt(int i)
{
return itemnames[i];
}
public void setItemnameAt(int i, String newItemname)
{
itemnames[i] = newItemname;
}
图片的标题说明: 你不是“//在类构造函数中将每个数组初始化为null”,默认情况下它们就是这样。你正在做的是用空字符串填充它们,在大多数情况下这是不必要的。
当迭代数组并用数值填充它们时,你可以在一个循环中完成它们。
for (int i = 0; i < 10; i++)
{
itemnames[i] = "";
itemcodes[i] = "";
category[i] = "";
}
编辑: 在声明数组大小时也要考虑使用常量,如下所示:
private static final int ARR_SIZE = 10;
private String[] array = new String[ARR_SIZE];