我有一個值列表,我需要在運行時存儲任何類型的值(主要是int,double,date,...)。後來我需要處理這些。我應該如何解決這個問題?創建並處理一般類型列表
這就是我想到的,它似乎工作,但我不知道這是否是解決此問題的正確方法。
ArrayList<Object> list = new ArrayList<Object>();
list.add("hello");
list.add(1);
list.add(0.5);
for (int i = 0; i < list.size(); i++)
{
Object obj = list.get(i);
if (obj instanceof Integer)
{
System.out.println((double)obj);
}
else if (obj instanceof String)
{
System.out.println(obj.toString());
}
else
{
System.out.println("Unable to deal with type.");
}
}
它必須是太** **通用持有'int','double','Date'等。 – NINCOMPOOP
你應該反思一下,你結構中的數據,以避免這種 – Tala
你的方法看起來是那樣的精細。有時這種使用'instanceof'的檢查是不可避免的。 –