无法将arraylist转换为字符串

时间:2012-08-26 20:07:33

标签: string arraylist

在下面的代码中,sBar是一个arraylist。我试图将其转换为String,然后将其写入文件。但是,我不知道我在这里做错了什么,因为我不断收到错误消息说:
    - 空指针异常      - 线程“Thread-1”中的异常java.lang.ClassCastException:java.lang.Long无法强制转换为java.lang.String

try{
   FileWriter writer = new FileWriter("stime.txt");
    for (Iterator it = sBar.iterator(); it.hasNext();) {
        String str = (String) it.next();
        writer.write(str);
     }
    }
 } catch (IOException e) {
 }

2 个答案:

答案 0 :(得分:0)

由于错误明确指出,您无法将Long投射到String Java强制转换只能用于将对象转换为实际 的类型;你不能使用强制转换将对象转换为其他类型。

您可能需要致电.toString()

答案 1 :(得分:0)

您无法通过强制转换将长整数转换为字符串。变化

String str = (String) it.next();

String str = it.next().toString();

编写它的另一种方法是为每个循环使用a:

for (Long val : sBar)
    writer.write(String.valueOf(val));