gpt4 book ai didi

java - getSize 期间出现 NullPointerException

转载 作者:行者123 更新时间:2023-12-02 04:14:36 25 4
gpt4 key购买 nike

我有麻烦了。我想知道如何解决它大约两个小时,但我仍然一无所知。你们能帮我吗?我再次编写了这段代码,但它没有改变任何东西,仍然不知道我错在哪里。

public class Historia {
public ArrayList<String> tablica;

public void odczyt() throws IOException, ClassNotFoundException {
ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream("skarbonka.bin"));
tablica = (ArrayList<String>) objectInputStream.readObject();
objectInputStream.close();
int size = tablica.size();
for(int i = 0; i<size; i++){
System.out.println(tablica.get(i));
}

}

还有第二堂课:

public class Zapis {
private GregorianCalendar gregorianCalendar = new GregorianCalendar();
private Scanner scanner = new Scanner(System.in);
private Historia dodaj = new Historia();

public void plik() throws IOException {
Dane dane = new Dane();
ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream("skarbonka.bin"));
ArrayList<String> arrayList = new ArrayList<String>();
dane.kwota = scanner.nextInt();
dane.dzien = String.format("%tc", gregorianCalendar);
int g = dodaj.tablica.size();
for(int i=0; i<g; i++){
arrayList.add("");
arrayList.set(i, dodaj.tablica.get(i));
}

arrayList.add(dane.toString());
objectOutputStream.writeObject(arrayList);
objectOutputStream.close();
}

}

There's the error

有什么想法吗?感谢帮助!

最佳答案

你的

public ArrayList<String> tablica;

从未初始化,因此当您调用时为 null

int g = dodaj.tablica.size();

将声明更改为

private List<String> tablica = new ArrayList<String>();

另请注意,通常建议针对接口(interface)进行编码,因此更喜欢使用 List 而不是 ArrayList 作为类型。

此外,使用 getter/setter 将您的成员设为私有(private)。

一般来说,你的代码对我来说没有多大意义,你打算做什么会很有趣吗?

关于java - getSize 期间出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33456226/

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