gpt4 book ai didi

java - 这个错误试图在 NetBeans 中告诉我什么?

转载 作者:行者123 更新时间:2023-12-01 23:40:25 25 4
gpt4 key购买 nike

所以我一直在编写我的程序,第一次在java中使用GUI。我认为我已经拥有了应有的一切,但给了我一个错误:

Exception in thread "main" java.lang.NullPointerException
at GUIProgram.<init>(GUIProgram.java:41)
at Inventory.main(Inventory.java:12)
Java Result: 1
BUILD SUCCESSFUL (total time: 3 seconds)

我不知道我到底要做什么,我一直在尝试解决它,但我做不到。

如果您需要更多信息来找出问题所在,请告诉我。

编辑(从评论复制)

Product[] array = new Product[table.length]; 
float total = 0; float fee = 0;
for(Product p: array) {
total += p.getTotal();
fee += p.getRestockingFee();
}

这是我正在构建的 GUIProgram 类。

    import javax.swing.*;
import java.awt.*;

public class GUIProgram extends JFrame
{

public GUIProgram()
{
super("Welcome to the Inventory Program");

setLayout(new FlowLayout());

String[] columnNames = {"Item", "Item No.", "Unit", "Price"};


Product[] table = new Product[5];

table[0] = new Product("chocolate", 1023, 124, 1.50f);
table[1] = new Product("ice cream", 1543, 170, 3.35f);
table[2] = new Product("milk", 1265, 230, 2.40f);
table[3] = new Product("orange juice", 1653, 199, 0.60f);
table[4] = new Product("cereal", 1534, 176, 3.50f);

for (int i = 0; i < table.length; i++)
{
JTextField textfield1 = new JTextField(table.length);
add(textfield1);

float total = 0;
float fee = 0;

for(Product p: table)
{
total += p.getTotal();
fee += p.getRestockingFee();

}

JTextField textfield2 = new JTextField(table.length);
textfield2 = new JTextField(String.format("The total value of the Fruits Inventory is: %.2f", total));
add(textfield2);

JTextField textfield3 = new JTextField(table.length);
textfield3 = new JTextField(String.format("The total restocking fee is: %.2f", fee));
add(textfield3);
}
}
}

我只是想为这个数组构建一个 GUI。

最佳答案

它说有一个名为GUIProgram.java的源文件,其第41行有一些对null引用的方法调用

Product[] array = new Product[table.length]; 

您声明您将拥有一个 Product 数组,并且数组中现在有空间用于 table.lengh Product 引用

所有这些引用仍然是null,您需要初始化每个产品

并且这样做

for(Product p: array) { 
// initialization
p = new Product();
total += p.getTotal();
fee += p.getRestockingFee();
}

关于java - 这个错误试图在 NetBeans 中告诉我什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18038791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com