本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

List<List<String>> 到 ArrayList<List<String>>

发布于2022-09-20 08:18     阅读(1351)     评论(0)     点赞(7)     收藏(3)


我很困惑......我知道我可以将 an ArrayListof Lists 存储在 a Listof Lists 上;

我有一个这样的对象:

SemanticTuple< List<String>, List<List<String>> > object;

我可以做这个:

List<List<String>> list = new ArrayList<>();
object = new SemanticTuple<>("name", Arrays.asList(header.split(headerSplitter)), list);

但我不能这样做:

object = new SemanticTuple<>("name", Arrays.asList(header.split(headerSplitter)), new ArrayList<>());

为什么它无法识别那里的类型?

更新

public class SemanticTuple <HASH, DATA> implements Serializable {

private String name;
private HASH hash;
private DATA Data;

public SemanticTuple() {
}

public SemanticTuple(String name, HASH hash, DATA Data) {
    this.name = name;
    this.hash = hash;
    this.Data = Data;
}
...

对象被另一个类声明为泛型:

public class MeteorologicTask extends Task < LineNumberReader, 
                                         SemanticTuple< List<String>, List<List<String>> >,
                                         SemanticTuple< List<String>, List<List<String>> > >{
...

从...

public abstract class Task <RESOURCE, INPUT, OUTPUT> implements Callable<OUTPUT>{

protected RESOURCE resource;
protected INPUT input;
protected OUTPUT output;
protected Integer taskID;

public Task() {
}

public Task(RESOURCE resource, Integer taskID) {
    this.resource = resource;
    this.taskID = taskID;
}
...

一个图像:

在此处输入图像描述


解决方案


您正在尝试创建一个新的 ArrayList 而不指定元素类型。您是否尝试过明确指定它?

SemanticTuple<List<String>, List<List<String>>> object = 
    new SemanticTuple<List<String>, List<List<String>>>(
        "name", 
        Arrays.asList(header.split(headerSplitter)), 
        new ArrayList<List<String>>()
    );

编辑:在构造函数调用中显式声明泛型类型SemanticTuple似乎在 Java 7 中有效。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/510301/be63feef657221669a0f/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

7 0
收藏该文
已收藏

评论内容:(最多支持255个字符)