【问题标题】:Converting an object to a string array将对象转换为字符串数组
【发布时间】:2017-03-21 22:39:32
【问题描述】:

我在将对象转换为数组时遇到问题。我已经搜索过这个问题,但没有一个对我来说是解决方案。

我有一个错误

线程“AWT-EventQueue-0”java.lang.ClassCastException 中的异常: sun.awt.shell.Win32ShellFolder2 无法转换为 [Ljava.lang.String;

这是我的代码:

 for (int i=0; i < list.getModel().getSize(); i++) {
                Object item = list.getModel().getElementAt(i);
                System.out.println("Item = " + item);   

                //String[] srcFiles = (String[]) item;

                File finalFile = new File(srcFiles[i]);
                FileInputStream fis = new FileInputStream(finalFile);

如何将Object item 转换为字符串数组?

【问题讨论】:

  • 这没有任何意义。你想做什么?为什么你认为(String[]) item 会起作用?你了解铸造的工作原理吗?
  • itemWin32ShellFolder2 类型,你不能自动变成String[]
  • 显示list 声明。
  • 我希望我的Object item 是一个字符串数组。

标签: java arrays object


【解决方案1】:

由于sun.awt.shell.Win32ShellFolder2File 的子类,你可以这样写:

Object item = list.getModel().getElementAt(i);
System.out.println("Item = " + item);   
FileInputStream fis = new FileInputStream((File)item);

【讨论】:

    猜你喜欢
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 2021-05-09
    • 1970-01-01
    相关资源
    最近更新 更多