如何清除(清空)java 中的字符串数组?
How to clear(empty) a string array in java?
我正在获取一些详细信息并将其存储到字符串数组中(使用 getter 和 setter)。之后我将其设置为一个 bean(获取了大量数据)。为避免堆 space 错误,我必须在每次将其设置为 bean.Is 后清除字符串数组,有什么方法可以清除它吗?我是这个环境的新手任何帮助都将非常有用....
代码如下.....
while ((nextLine = reader.readNext()) != null &&nextLine.length!=0) {
Encapsulation encap=new Encapsulation();
// System.out.println("product name"+nextLine[1]);
encap.setId(nextLine[0]);
encap.setProduct_name(nextLine[1]);
encap.setProduct_url(nextLine[6]);
encap.setProduct_image(nextLine[3]);
encap.setProduct_price(nextLine[5]);
encap.setProduct_src("www.flowersuk.com");
encap.setCountry("Uk");
encap.setDate(myDate);
encap.setCategory(nextLine[8]);
cvobj.DBConnection(encap);
//at here i need to clear the string array.
}
nextLine = null;
怎么样?假设没有其他对它的引用悬而未决,那么它应该有资格进行垃圾收集。
我无法相信包含 9 个 个字符串的数据结构会导致堆溢出。特别是因为 encap
在循环中被重新声明,因此早期版本的 encap 可以在每个循环中自由地被垃圾收集。
错误肯定出在其他地方:可能在 cvobj.DBConnection(encap);
或您的 reader 代码中。
至于你的实际问题,你不需要做任何事情。
p.s。重读这个答案时,我的语气似乎有点刺耳,但不确定如何重写。 :-)
我正在获取一些详细信息并将其存储到字符串数组中(使用 getter 和 setter)。之后我将其设置为一个 bean(获取了大量数据)。为避免堆 space 错误,我必须在每次将其设置为 bean.Is 后清除字符串数组,有什么方法可以清除它吗?我是这个环境的新手任何帮助都将非常有用....
代码如下.....
while ((nextLine = reader.readNext()) != null &&nextLine.length!=0) {
Encapsulation encap=new Encapsulation();
// System.out.println("product name"+nextLine[1]);
encap.setId(nextLine[0]);
encap.setProduct_name(nextLine[1]);
encap.setProduct_url(nextLine[6]);
encap.setProduct_image(nextLine[3]);
encap.setProduct_price(nextLine[5]);
encap.setProduct_src("www.flowersuk.com");
encap.setCountry("Uk");
encap.setDate(myDate);
encap.setCategory(nextLine[8]);
cvobj.DBConnection(encap);
//at here i need to clear the string array.
}
nextLine = null;
怎么样?假设没有其他对它的引用悬而未决,那么它应该有资格进行垃圾收集。
我无法相信包含 9 个 个字符串的数据结构会导致堆溢出。特别是因为 encap
在循环中被重新声明,因此早期版本的 encap 可以在每个循环中自由地被垃圾收集。
错误肯定出在其他地方:可能在 cvobj.DBConnection(encap);
或您的 reader 代码中。
至于你的实际问题,你不需要做任何事情。
p.s。重读这个答案时,我的语气似乎有点刺耳,但不确定如何重写。 :-)