我想对包含多个列表的 ArrayList 进行排序。换句话说,我有一个 ArrayList,我想根据内部列表的元素之一对其进行排序。 例如以下列表中的标签: [[那个,IN,157],[那个,WDT,69],[那个,DT,33]]
我希望能够选择用于排序的列。我想使用下面的代码。但是,它不接受内部方法的输入变量 i。
public void sortCheckedTags(int i){
Collections.sort(checkedTags, new Comparator<List>(){
public int compare(List item1, List item2)
{
return ((String)item1.get(i)).compareTo(((String)item2.get(i)));
}
});
}
有什么建议吗?
最佳答案
像这样声明你的方法:
public void sortCheckedTags(final int i)
您可以查看 anonymous inner classes 上的文档:
An anonymous class cannot access local variables in its enclosing scope that are not declared as final or effectively final.
关于java - 如何选择 ArrayList<List> 中列表的哪一列用于对 ArrayList 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22747818/