Я работаю над программой для обработки химических формул, и я пишу метод, который нужно перебирать через ArrayList, называемый «terms», и возвращать первый в алфавитном порядке.Возвращаемые элементы из ArrayList По алфавиту
например. Термин ('C', 1)} возвращает Term ('C', 4), Term ('C', 2), Term ('H', 4), Term ('C', 1)}
Я написал этот код до сих пор, но он не работает. Я - настоящий новичок на языке Java.
public Term nextElement()
{
int i = 0;
for (i = 0; i < terms.size()-1; i++)
{
int j = 1;
while (i + j <= terms.size())
if (terms.get(i).getElement() > terms.get(i+j).getElement())
{
terms.remove(i+j++);
return terms.get(i);
}
}
return null;
}
Я бы по достоинству оценил любые идеи или предложения по решению этой проблемы. Благодаря!
Спасибо за этот ответ! Второй метод действительно ясен для меня, и я использовал это, но я не понимаю, почему вы поставили terms.remove (index) сразу после добавления term.get (index)? Я просто избавился от этой строки и пропустил все тесты, которые я написал –
@JohnSmith, если этот ответ зафиксировал вашу проблему, отметьте ее как принятую, чтобы помочь другим людям, которые имеют одинаковую проблему –