0

我在此代码中有以下错误:无法推断 ReadOnlyListWrapper<> 的类型参数我的返回类型应该如何?我需要为所有列中的每个节点保存arraylist。但我不能退货。

        for (Entry<String, String> ent : dc.getSortedOrgAll().entrySet()) {

        TreeTableColumn<String, ArrayList<String>> col = new TreeTableColumn<>(
                ent.getValue());

        col.setCellValueFactory(new Callback<TreeTableColumn.CellDataFeatures<String, ArrayList<String>>, ObservableValue<ArrayList<String>>>() {
            @Override
            public ObservableValue<ArrayList<String>> call(
                    CellDataFeatures<String, ArrayList<String>> param) {
                TreeMap<String, List<String>> temp = (TreeMap<String, List<String>>) dc
                        .getFuncTypeOrg().clone();
                ArrayList<String> result =  new ArrayList<>();
                for (int i = 0; i < temp.size(); i++) {
                    List<String> list = temp.firstEntry().getValue();
                    String key = temp.firstEntry().getKey();
                    // root.getChildren();

                    if (list.get(1).equals("Papier")) {
                        System.out.println(list.get(1));
                    }
                    if (list.get(1).equals(param.getValue().getValue())
                            && list.get(5).equals(col.getText())) {
                        result.add(list.get(2));
                        if(list.size()==9)
                        result.add(list.get(list.size()-1));
                        else result.add("White");

                    } else {
                        temp.remove(key);
                    //  result = null;
                    }

                }

                return new ReadOnlyListWrapper<>(result);
            }
        });
4

1 回答 1

1

ReadOnlyListWrapper<T>implements ObservableValue<ObservableList<T>>,这不是您所需要的,因为您声明了回调以返回ObservableValue<ArrayList<T>>( Tis just Stringhere)。

所以我认为你只需要

return new ReadOnlyObjectWrapper<ArrayList<String>>(result);

你可以省略泛型类型:

return new ReadOnlyObjectWrapper<>(result);

只是一个评论:我认为你可以通过定义一些实际的数据模型类来让你的生活更轻松,而不是试图将你的数据强制到各种集合实现中。

于 2015-03-04T14:29:33.247 回答