【发布时间】:2015-11-13 07:37:52
【问题描述】:
在我正在编写的应用程序中,我将 XML 加载到 Java String[] 中,然后将每个项目转换为对象并将它们添加到对象数组中。
下面是我的代码:
Java 部分,带有 do-while 循环
ArrayList<ExpandListGroup> list = new ArrayList<ExpandListGroup>();
ArrayList<ExpandListChild> list2 = new ArrayList<ExpandListChild>();
ExpandListGroup gru1 = new ExpandListGroup();
gru1.setName(getString(R.string.album_vancouver));
String[] tempArray = getResources().getStringArray(R.array.album_array_vancouver);
int count = 0;
int max = tempArray.length;
do {
ExpandListChild ch = new ExpandListChild();
ch.setName(tempArray[count]);
ch.setTag(null);
list2.add(ch);
} while(count <= max);
gru1.setItems(list2);
list.add(gru1);
以及 XML 中的数组
<string name="album_vancouver">Vancouver</string>
<string name="song_vancouver_1">Future Wars</string>
<string name="song_vancouver_2">A Word Of Welcome And Of Warning</string>
<string name="song_vancouver_3">See You In Vancouver</string>
<string name="song_vancouver_4">To Withstand The Force Of Storms</string>
<string name="song_vancouver_5">He Is Here, He Is Not Afraid</string>
<string name="song_vancouver_6">The Surgeon And The Scientist</string>
<string name="song_vancouver_7">Fairmount</string>
<string name="song_vancouver_8">Untitled</string>
<string-array name="album_array_vancouver">
<item>@string/song_vancouver_1</item>
<item>@string/song_vancouver_2</item>
<item>@string/song_vancouver_3</item>
<item>@string/song_vancouver_4</item>
<item>@string/song_vancouver_5</item>
<item>@string/song_vancouver_6</item>
<item>@string/song_vancouver_7</item>
<item>@string/song_vancouver_8</item>
</string-array>
我在运行时收到java.lang.OutOfMemoryError,位于“list2.add(ch)”行。
我可以做些什么来完成这项工作?
【问题讨论】: