gpt4 book ai didi

java - 无法从 Vector 转换为 Integer
转载 作者:行者123 更新时间:2023-12-01 14:36:59 25 4
gpt4 key购买 nike

我试图显示数据库中的所有结果,但在结果循环中出现以下错误:无法从 vector 转换为整数无法从 vector 转换为字符串

<% 
Vector<Object> Results = scoreBean.getAllResults();
String homeTeam;
String awayTeam;
int homeScore;
int awayScore;
final int NUM_FIELDS = 4;



for (int i=0;i<Results.size()/NUM_FIELDS;i++)
{
homeTeam = (String)Results.elementAt(i*NUM_FIELDS); \\\error here
awayTeam = (String)Results.elementAt(i*NUM_FIELDS + 1); \\\error here
homeScore = (Integer)Results.elementAt(i*NUM_FIELDS + 2);\\\error here
awayScore = (Integer)Results.elementAt(i*NUM_FIELDS + 3);\\\error here

%>
<TR>
<TD><%= homeTeam %></TD>
<TD><%= awayTeam %></TD>
<TD><%= homeScore %></TD>
<TD><%= awayScore %></TD>
</TR>
<%
}

最佳答案

从错误来看,Vector 中存储的值可能实际上不是整数:

homeScore = (Integer)Results.elementAt(i*NUM_FIELDS + 2);\\\error here
awayScore = (Integer)Results.elementAt(i*NUM_FIELDS + 3);\\\error here

因此出现了ClassCastException。检查存储在集合中的值的类型。

一些注意事项:

  • Vector 集合已过时。请改用 ArrayList
  • 使用 scriptlet 也是一个坏主意,请考虑使用 JSTL forEach 用于迭代集合。

关于java - 无法从 Vector<Object> 转换为 Integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16401455/

25 4 0