Это мой первый пост здесь, но я остро нуждаюсь в некотором опыте Java (или, возможно, просто в другом взгляде).
Я записываю ArrayList объектов (Result) в 2d массив. Я пытаюсь использовать вложенный цикл. В основном, каждая строка вводится, и первый столбец проверяется, чтобы убедиться, что он совпадает с любым из в ArrayList с тем же атрибутом 'team' если он находит совпадение, обрабатывает его и удаляет, он продолжается до конца списка и затем завершается, чтобы повторить процесс в следующей строке.
Кажется, что это работает, однако, когда он находит совпадение и обрабатывает его (включая удаление), он, похоже, не продолжает искать во внутреннем цикле больше совпадений.
Может кто-нибудь сказать, почему он не продолжает цикл?
Вот мой код:
private String[][] addScores(String[][] dataTable)
{
for(int r = 0; r < dataTable.length; r++)
{
Iterator<Result> itr = outcomes.iterator();
Result temp = new Result();
while(itr.hasNext())
{
temp = itr.next();
//If a team is found.
if (dataTable[r][0] == temp.team)
{
//Increases matches played.
dataTable[r][1] = String.valueOf(Integer.parseInt(dataTable[r][1]) + 1);
if(temp.result == WIN)
{
dataTable[r][2] = String.valueOf(Integer.parseInt(dataTable[r][2]) + 1);
}
if(temp.result == DRAW)
{
dataTable[r][3] = String.valueOf(Integer.parseInt(dataTable[r][3]) + 1);
}
if(temp.result == LOSE)
{
dataTable[r][4] = String.valueOf(Integer.parseInt(dataTable[r][4]) + 1);
}
//removes entry.
itr.remove();
break;
}
}
}
return dataTable;
}