检查ArrayList的值-一行-是否相同

问题描述 投票:0回答:1

我有一个似乎没有找到答案的问题。所以我有一个由2种类型的值组成的ArrayList:Won或Loss。这些值以不同的顺序出现。我需要检查多少次相同的值来自数组顶部以显示例如使用者连续赢得5次。

ArrayList <String> wins = new ArrayList<String>();
System.out.print(wins);

[Won, Won, Won, Loss, Loss, Won, Won, Loss, Loss, Loss, Loss, Loss, Won, Won, Won, Won, Won, Loss]

任何人都可以解决吗?我已经尝试了一段时间,但不幸的是我还没有找到解决方案。 T

java sql arraylist system.out
1个回答
1
投票

//假设列表中至少包含一个元素

List<String> wins = Arrays.asList(new String[]{"Won", "Won", "Won", "Loss", "Loss", "Won", "Won", "Loss", "Loss", "Loss", "Loss", "Loss", "Won", "Won", "Won", "Won", "Won", "Loss"});
        System.out.println(wins);
        String value = wins.get(0);
        int maxValue=1;
        int count = 1 ;
        for(int i=1;i<wins.size();i++){
            if(wins.get(i) == wins.get(i-1)){
                count++;
                if(count >= maxValue){
                    maxValue = count;
                    value = wins.get(i);
                }
            }else{
                count=1;
            }
        }
        System.out.println(value + " : " + maxValue );
© www.soinside.com 2019 - 2024. All rights reserved.