Почему с этой конструкцией ифов - он неправильно считает самую длинную последовательность?
package com.javarush.task.task08.task0812;
import javax.print.attribute.IntegerSyntax;
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
ArrayList <Integer> numbersList = new ArrayList<>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i =0; i<10; i++) {
numbersList.add(i, Integer.valueOf(reader.readLine()));
}
int length = 1;
int maxLength = 0;
ArrayList<Integer> lengthOfNumbers = new ArrayList <> ( );
for (int i = 1; i < numbersList.size (); i++) {
// если есть последовательность увеличь счетчик на один
if(numbersList.get ( i ) == numbersList.get ( i-1 )){
length +=1;
}
// если последовательность прервалась
if(numbersList.get ( i ) != numbersList.get ( i-1 )){
// проверь текущая последовательность больше ли максимальной?
if ( maxLength < length) {
maxLength = length;
lengthOfNumbers.add ( maxLength );
length=1;
}
if (maxLength>length){
length =1;
lengthOfNumbers.add ( maxLength );
}
}
}
Collections.sort ( lengthOfNumbers );
int result = lengthOfNumbers.get ( lengthOfNumbers.size ()-1);
System.out.println (result);
}
}
/*
* boolean flag = false;
HashMap <Integer, Integer> hmap = new HashMap<>();
for (int i =1; i<10; i++){
if(temp.get(i) == temp.get(i-1)) {
int nT = temp.get(i);
if(!hmap.containsKey(nT)){ // было ли уже такое число?
hmap.put(nT,1); // если нет. то создай новую пару. ключ само число. валуе кол-во его повторений. Один.
continue; // чтобы перейти на следующую итерацию. не заходя в следующий иф.
}
if(hmap.containsKey(nT)){ // если такое число уже было.
int tempValue = hmap.get(nT); // получи текущее валуе.
tempValue+=1; // value +=1
hmap.put(nT, tempValue); // установи новый value
flag = true; // флаг что хотябы одно число уже было больше одного раза
}
}
}
int i = 0;
if (flag = false) {
System.out.println(1);
}
else
for(Map.Entry<Integer,Integer> v : hmap.entrySet()){
int temp1 = v.getValue();
if (temp1>=i) i= temp1;
}
System.out.println(i+1);
*/