如何清除(清空)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。重读这个答案时,我的语气似乎有点刺耳,但不确定如何重写。 :-)