我有一个LeagueList数组。然后按得分和目标差对数组进行排序。
我需要做的是在联盟排名(第1,第2,第3,第4等)以下添加帖子,这样联盟可以包含8支球队或32支球队。
leagueList.sort(Comparator.comparing(league_List::getPoints).thenComparing(league_List::getGoalDiff));
Collections.reverse(leagueList);
league_lv_adapter adapter = new league_lv_adapter (getActivity(), leagueList);
listViewLeague.setAdapter(adapter);
需要在保留数组之后,将数组传递给适配器之前添加排名。
关于如何执行此操作的任何想法?
我的一个主意是创建第二个数组,并以正确的顺序将团队传递到第二个数组,然后在每次添加的循环中添加一个循环,以增加排名。它应该可以工作,但是看起来很不优雅,在实施之前,我想看看是否有人对实现同一目标有任何创意。
答案 0 :(得分:0)
我找到了实现排名的最简单方法。在数组适配器中,获取视图的方法在整数位置传递。
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
并且由于Java使用从零开始的数组,我只需要加1;
Integer rank = position + 1;