在java中使用hibernate将字符串列表转换为字符串

时间:2013-06-21 08:49:23

标签: java hibernate

我试图将列表数据强制转换为字符串,但是它显示错误为java.lang.ClassCastException:java.lang.String无法强制转换为java.util.List 请帮我解决这个问题。这是使用hibernate完成的。

for(int i2=1; i2<=gantttablecolnameList.size(); ++i2)
{
   columnname= (String) ((List)gantttablecolnameList.get(i1)).get(0);
}

此列表包含表格列名。

3 个答案:

答案 0 :(得分:1)

如果您的List gantttablecolnameList确实有String,请尝试以下操作:

for(int i2=0; i2<gantttablecolnameList.size(); i2++)
{
  columnname= (String) (gantttablecolnameList.get(i2));
}

你这样做:

(List)gantttablecolnameList.get(i1)

假设您的List gantttablecolnameList包含StringgantttablecolnameList.get(i1)将为您提供Object,该实际上是由运行时值指定的索引的String实例i1。所以,简而言之,你正在尝试这个:

 (List)"someString";

这是不可能的。

答案 1 :(得分:0)

尝试

 columnname= (String) ((List)gantttablecolnameList).get(0));
<{1>} (List)gantttablecolnameList.get(i1)) gantttablecolnameList.get(i1)将为您提供元素..不在列表中。

但实际上你必须检查null条件。你现在是NUll PATTERN

答案 2 :(得分:0)

有几件事:

  1. 向下转为List <String>,而不是现在的原始类型;
  2. 使用增强的for循环遍历列表。不要做基于索引的迭代;
  3. 一旦处理完上述内容,您的代码将变得非常简单,以便让错误消失:

     for (String columname : (List<String>) ganttablecolumnlist) ...