Java SE 6.0新特性体验 - 编程入门网
,“sorter.setRowFilter (RowFilter.regexFilter ("^A"));”语句能够创建一个行过滤器,它的“^A”正规表达式仅接受以A开始的行。
JTable还提供了其它一些与排序和行过滤有关的新方法。这其中的两个是:“public int convertRowIndexToModel(int viewRowIndex)”和“public int convertRowIndexToView(int modelRowIndex)”,它们分别负责把一个行的索引(根据模型)映射到视图和把一个行的索引(根据视图)映射到模型。 为了向你说明仅是视图为排序和过滤所影响,我使用了前面的TableSortFilterDemo演示应用程序中的一个“convert”方法。在改变行过滤器以后,除了把null传递给TableRowSorter的“public void setSortKeys(List<? extends RowSorter.SortKey> sortKeys)”方法以打乱视图的排序外,列表4(见本文示例源程序)中其它的内容我们都已经讨论过。 在编译和运行这个应用程序后,通过点击某一列的列头部初始化一个排序。作为响应,所有的行按被点击的列值重新升序或降序排列(每次点击使之在升序与降序之间切换)。选择的列和排序顺序以相应列头部的一个向上/向下的箭头指示,如图3所示。 图3.一个向上箭头表示现在是按升序排序。 除了排序之外,你还能够安装一个过滤器以决定在视图中显示哪些行。为此,只要在文本域中输入一个正规表达式(例如^J或J),并且点击“Set Filter”按钮即可。作为响应,所有的匹配该正规表达式的行都被以非排序方式显示(见图4)。然后,你可以再对这些行进行排序。 图4.点击“Set Filter”对过滤的行建立一个未排序的视图。 六、结论 除了上面所讨论的新特征之外,Mustang还提供一个编译器API,一个脚本库,一个Java数据库,在JDBC方面也作了新的改进,XML数字签名,更好的国际化,等功能。其它特征还有待于读者自己去探讨。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |