有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在匿名内部类中使用Java泛型

我已经编辑了我的示例,以展示我试图实现的一个更实际的示例。我想了解在Lambda表达式中实例化新的TableCell对象时,如果将类型传递到方法中,我应该指定什么作为第二种类型

提前感谢您的帮助

void setTableCellStuff (TableColumn <Object, ?> tableCell) {
    tableCell.setCellFactory(arg0 -> 
        new TableCell <Object, ?> () // cannot use ? in instantiator.
    );
}

共 (1) 个答案

  1. # 1 楼答案

    你可能想要这个:

    <T> void setTableCellStuff (TableColumn <Object, T> tableCell) {
        tableCell.setCellFactory(arg0 -> 
            new TableCell <Object, T> ()
        );
    }
    

    T仍然可以是任何类型,但这样构造的表单元格类型与您拥有的列类型匹配