java 获取枚举对象_Java:获取与枚举相关联的对象
我有一個ArrayList充滿了自定義對象。我需要將此ArrayList保存到一個Bundle中,然后再檢索它。
使用Serializable和Parcelable失敗后,我現在只是試圖以某種方式將與索引關聯的對象保存在ArrayList中,然后在恢復Bundle并將對象添加回來時檢查這些對象。
我擁有的是這樣的:
保存軟件包時:
//Create temporary array of the same length as my ArrayList
String [] tempStringArray = new String[myList.size()];
//Convert the enum to a string and save it in the temporary array
for (int i = 0; i
tempStringArray [i] = myList.get(i).getType(); //returns the enum in string form
}
//Write this to the Bundle
bundle.putStringArray("List", tempStringArray);所以我現在有一個字符串數組,它表示最初在ArrayList中的對象的枚舉類型。
所以,在恢復Bundle時,我正在嘗試的是這樣的:
//Temporary string array
String[] tempStringArray = savedState.getStringArray("List");
//Temporary enum array
ObjectType[] tempEnumArray = new ObjectType[tempStringArray.length];
for (int i = 0; i
tempEnumArray[i]=ObjectType.valueOf(tempEnemies[i]);
}所以,現在我有了最初在ArrayList中的每個項目的枚舉類型。
我現在想要做的事情就像(會進入上面的for循環):
myList.add(tempEnumArray[i].ObjectTypeThisEnumRefersTo());很明顯,上面的“ObjectTypeThisEnumRefersTo()”方法不存在,但最終,我試圖找出。這是可能的,或者也許有其他方式做到這一點?
總結
以上是生活随笔為你收集整理的java 获取枚举对象_Java:获取与枚举相关联的对象的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 年轻人爱上用B站学习?播放时长最长内容竟
- 下一篇: java 如何实现计数_如何高效的实现一