基于两个不同列的值的JTable行过滤

cap*_*awi 4 java swing nested jtable rowfilter

我想基于两个不同列的值在JTable中实现行过滤:

column1 = 1

column2 = 5

以下是基于INDEX_FIELD = 1条件执行行过滤的方法:

    public void rowFiltering(int x) {
    RowFilter<ResultsModel, Integer> IDfilter = RowFilter.numberFilter(
            ComparisonType.EQUAL, x, column1);
    resultsTableSorter.setRowFilter(IDfilter);
}

rowFiltering(1);
Run Code Online (Sandbox Code Playgroud)

如何基于两个值实现行过滤?就像是...

rowFiltering(valueColumn1, valueColumn2);
Run Code Online (Sandbox Code Playgroud)

cam*_*ckr 8

使用and过滤器:

//rf = RowFilter.regexFilter(filterText.getText(), 0);
List<RowFilter<Object,Object>> filters = new ArrayList<RowFilter<Object,Object>>(2);
filters.add(RowFilter.regexFilter(filterText.getText(), 0));
filters.add(RowFilter.regexFilter(filterText.getText(), 1));
rf = RowFilter.andFilter(filters);
Run Code Online (Sandbox Code Playgroud)

上面的代码是从排序和筛选中的示例修改的.