gpt4 book ai didi

java 1.6 arraylist 对象无法转换为字符串

转载 作者:行者123 更新时间:2023-12-01 08:52:03 25 4
gpt4 key购买 nike

我在尝试读取高峰期列表中的内容时遇到问题。我收到的错误是 java.lang.object 无法转换为 java.lang.String。
当我使用 java 1.6 时,是否有任何可能的解决方法来解决此问题?

Delegate.java

 List peakPeriod = new ArrayList();  
try{
peakPeriod = Dao.retrievePeakPeriod("2017");
for (Iterator i=peakPeriod.iterator(); i.hasNext(); {
System.out.println("Peak Periods:"+(String)i.next());
}
catch(Exception e){ System.out.println("Error:"+e);}

Dao.java

public List retrievePeakPeriod(String year) throws DataAccessException;

DaoImpl.java

public List retrievePeakPeriod(String year) throws DataAccessException {
List list = getHibernateTemplate().find("select cal.startdate,cal.enddate from Calendar cal " +
"where to_char(cal.startdate,'yyyy') = ?",
new Object[] { year },
new Type[] { Hibernate.STRING });

return list;
}

最佳答案

System.out.println("Peak Periods:"+ i.next());

您不必将其转换为字符串 - java 会自动调用 toString() 方法,因此上面相当于:

System.out.println("Peak Periods:"+ i.next().toString());

如果你的列表可以有空值,你可以做一些更安全的事情,例如:

System.out.println("Peak Periods:"+ String.valueOf(i.next()));

编辑:这假设返回的对象具有有用的 toString 表示形式,并且这就是您想要的。否则,您需要弄清楚返回的对象的类型(类)并对其进行您想要的操作。

关于java 1.6 arraylist 对象无法转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42325390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com