【问题标题】:error: Type mismatch: cannot convert from ArrayList<Subchild> to ArrayList<String>错误:类型不匹配:无法从 ArrayList<Subchild> 转换为 ArrayList<String>
【发布时间】:2011-12-20 11:01:16
【问题描述】:

您好,我之前成功解析了一个 xml 文件。现在我在收到很多错误后更改了我的 xml 文件中的简单修改。如何解决这个错误我不知道我第一次发布我的 xml 文件并且正在使用 sax 解析器。

我有两个微调器,如果我单击第一个微调器,它显示 test1、test2、test3,然后我选择 test1,它显示 test1 子标签名称 stest1 到 stest5。如果选择 test2 我的第二个微调器将 stest6 显示到 stest10 这是我的工作 xml 文件输出现在我正试图从我的 xml 文件中添加一个标签到 sltag 已经是我的 sltag 显示名称标签现在我在这里添加我的问题开始了。我的问题是如何将两个值都放入我的 sltag 我需要单独的字符串值所以我在我的 sltag 数组列表中传递了类并在将名称和路径声明到数组列表之后创建类然后如何获取两个字符串值我的目的是当我选择我想在同一屏幕底部显示一些图像的第二个微调器值我试图获取路径字符串值。

这是我的错误: 1.错误提示:Type mismatch: cannot convert from ArrayList to ArrayList

来源链接:http://paste.org/42566

其他java文件链接在这里:

http://paste.org/42567

http://paste.org/42568

http://paste.org/42569

【问题讨论】:

  • 我希望从 sltag 获取路径字符串值

标签: java android xml parsing sax


【解决方案1】:

您的方法getSLTag 被声明为返回ArrayList&lt;String&gt;,但xmlTag 类中的变量sltag 实际上是ArrayList&lt;SubChild&gt;,因此类型不匹配。

因此,要回答您关于希望从 sltag 获取路径字符串的附加评论,您需要遍历 SubChilds 的集合并将每个路径添加到新的字符串列表中,例如

public ArrayList<String> getSLTag(String hltag) {
    List<String> slTags = new ArrayList<String>();
    for(int i = 0; i < xmlTagInfo.size(); i++) {
        if( xmlTagInfo.get(i).hltag == hltag ) {
            for (SubChild child : xmlTagInfo.get(i).sltag) {
                // Your SubChild class actually declares path and name to be an ArrayList of Strings, but surely they should just be Strings?
                slTags.add(child.getPath());
            }
        }
    }
    return slTags;
}

【讨论】:

  • 我对java不熟悉,请帮助纠正我的源代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-23
相关资源
最近更新 更多