繁体   English   中英

使用 Java Fx,在创建搜索过滤器时搜索 integer 值的最佳方法是什么?

[英]Using Java Fx, what is the best way to search for an integer value when creating a search filter?

我正在尝试将搜索过滤器添加到 Javafx gui。 我需要按产品 ID 号进行过滤,并尝试了一系列不同的方法,以便将其添加到可搜索项目的 if (else) 块中,但均未成功。 它目前将搜索文本项以及行号,但不搜索 id 列值。 我看到的文档只引用了字符串值。 任何提示将不胜感激。


FilteredList<Part>filteredData = new FilteredList<>(allParts,p->true);
        partsSearchBox.textProperty().addListener((observable,oldValue,newValue) -> {
            filteredData.setPredicate(part -> {
                if (newValue == null || newValue.isEmpty()) {
                    return true;
                }

                String lowerCaseFilter = newValue.toLowerCase();

                if (part.getPartName().toLowerCase().contains(lowerCaseFilter)) {
                    return true;
                }
                return false;
            });
        });

        SortedList<Part> sortedData = new SortedList<>(filteredData);
        sortedData.comparatorProperty().bind(partsTableview.comparatorProperty());
        partsTableview.setItems(sortedData);

您可以通过调用 String.valueOf(id) 将 integer 值用作字符串。

例如:

else if( String.valueOf(part.getId()).toLowerCase().contains(lowerCaseFilter))
    return true;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM