Java For循环-将此更改为“;“类变量”;

Java For循环-将此更改为“;“类变量”;,java,Java,我是Java新手(在这个网站上提问),每次for循环从itemlist1运行到itemList2然后itemList3时,我都试图将itemList变量从inputs.Items.itemlist1更改为itemList2。 这是我的密码: items.java public class Items { public static Object[][] itemList1 = new Object[][]{ {"book", 12.49f, "BOOK"}, {"Music C

我是Java新手(在这个网站上提问),每次for循环从
itemlist1
运行到
itemList2
然后
itemList3
时,我都试图将
itemList
变量从
inputs.Items.itemlist1
更改为
itemList2
。 这是我的密码:

items.java

public class Items {

public static Object[][] itemList1 = new Object[][]{
    {"book", 12.49f, "BOOK"},
    {"Music CD", 14.99f, "OTHERS"},
    {"chocolate bar", 0.85f, "FOOD"},};
public static Object[][] itemList2 = new Object[][]{
    {"imported box of chocolates", 10.00f, "IMPORTED_FOOD"},
    {"imported bottle of perfume", 47.50f, "IMPORTED_OTHER"},};
public static Object[][] itemList3 = new Object[][]{
    {"imported bottle of perfume", 27.99f, "IMPORTED_OTHER"},
    {"bottle of perfume", 18.99f, "OTHERS"},
    {"packet of headache pills", 9.75f, "MEDICAL"},
    {"box of imported chocolates", 11.25f, "IMPORTED_FOOD"}
};

public static Object[] possibleListLength = new Object[]{itemList1.length, itemList2.length, itemList3.length};
public static Object[] possibleList = new Object[][]{itemList1, itemList2, itemList3};
}

determiniteItem.java

package tax;
import java.util.Arrays;
import java.util.ArrayList;
public class DetermineItem {
    public static String itemPriceString = "";
    public static void main(String[] args) {
        //System.out.println(Arrays.deepToString(inputs.Items.itemList1));
        Object arrayLength = inputs.Items.possibleList.length;
        int arrayLengthInt = (Integer) arrayLength + 1;
        for (int j = 1; j < 4; j++) {
            System.out.println("Output " + j + ":");
            for (int i = 0; i < arrayLengthInt; i++) {
                Object[][] itemList = inputs.Items.itemList1;
                Object itemTypeObject = itemList[i][2];
                String itemTypeString = itemTypeObject.toString();
                if (itemTypeString.equals("BOOK") || itemTypeString.equals("FOOD") || itemTypeString.equals("MEDICAL")) {
                    System.out.println("1 " + itemList[i][0] + ": " + itemList[i][1]);
                } else if (itemTypeString.equals("IMPORTED_FOOD") || itemTypeString.equals("IMPORTED_OTHER")) {
                    Object itemPriceObject = itemList[i][1];
                    itemPriceString = itemPriceObject.toString();
                    CalculateImportTax.calculateImportTax();
                    System.out.println("1 " + itemList[i][0] + ": " + CalculateImportTax.price);
                } else {
                    Object itemPriceObject = itemList[i][1];
                    itemPriceString = itemPriceObject.toString();
                    CalculateSalesTax.calculateTax();
                    System.out.println("1 " + itemList[i][0] + ": " + CalculateSalesTax.price);
                }
            }
        }
    }
}
package税;
导入java.util.array;
导入java.util.ArrayList;
公共类决定项{
公共静态字符串itemPriceString=“”;
公共静态void main(字符串[]args){
//System.out.println(Arrays.deepToString(inputs.Items.itemList1));
对象数组长度=inputs.Items.possibleList.length;
int-arrayLength=(整数)arrayLength+1;
对于(int j=1;j<4;j++){
System.out.println(“输出“+j+”:”);
对于(int i=0;i

谢谢。

这就是方法的用途。在大纲中,由于方法命名(!)选择不当

我强调我的意见,这不是一个现成的解决方案,它只是一个如何继续的草图

值得一提的是,我将定义一种比“Object”数组更具体的类型。比如:

 static class Item {
     String description;
     Double tax;
     String type;
 }

然后使用一个一维项目[]

什么在阻止你?你的问题在哪里?我不知道如何让它在每次通过循环时自动更改名称。你不能动态更改类成员的名称在这种情况下你会怎么做?我需要能够保存对象的信息,比如它的成本和名称,并获取这些信息。如果您真的需要能够动态更改对象的名称,那么您可以使用HashMap类。
    doOneList(itemList1);
    doOneList(itemList2);
    doOneList(itemList3);
 static class Item {
     String description;
     Double tax;
     String type;
 }