Spring Boot - поиск слова в ArrayList и возврат его в GET - PullRequest
0 голосов
/ 09 октября 2018

У меня есть список массивов в моем Сервисе классе:

@Service
public class PeopleService {

    private List<Person> people = new ArrayList<>(Arrays.asList(  

        new Person("1", "John", "Smith"),
        new Person("2", "Peter", "andna"),
        new Person("3", "Fred", "Rieger")
                    )); 

И что я хочу сделать, это то, что я хочу создать метод, который будет искать слово палиндрома вэтот список и десять возвращают его через запрос GET.Мой контроллер , надеюсь, будет таким:

//GET palindrome
@RequestMapping("/people")
public List <Person> getPalindromePeople() 
{
    return peopleService.getPalindromePeople(); 
}

Я знаю, что для поиска на палиндроме я должен адаптировать этот код (код не мой, мне нужно его изменить):

int i1 = 0;
int i2 = word.length - 1;
while (i2 > i1) {
    if (word[i1] != word[i2]) {
        return false;
    }
    ++i1;
    --i2;
}
return true;

Проблема в том, что я не могу понять, как адаптировать этот код для поиска слов палиндрома в моем списке массивов, потому что он состоит из 3 объектов, и каждый из них имеет 3 параметра (id, nameФамилия).Может ли кто-нибудь дать мне небольшой совет с этим?Я ценю.

1 Ответ

0 голосов
/ 09 октября 2018

Вам нужно перебрать список и вызвать колл для проверки палиндрома.Вот фрагмент, который проверяет палиндром на основе firstName

List<Person> persons;
List<Person> resultList = new ArrayList<>();
for(Person person: persons){
    if(istPalindrom((person.getFirstName().toCharArray())))
        resultList.add(person)
}
return resultList

На основе вашей логики вы можете добавить проверку на fistName и lastName или firstName или lastName, изменив условие if

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...