single
Desafio: Implementando BrowserHistory
Deslize para mostrar o menu
Deslize para começar a programar
Nesta tarefa, é necessário completar a classe BrowserHistory preenchendo as partes faltantes. O objetivo é implementar um sistema básico de histórico de navegação utilizando duas pilhas: uma para navegação para trás (backStack) e outra para navegação para frente (forwardStack).
Você irá gerenciar a visita a novas páginas, a navegação para trás e para frente no histórico, além de manter o controle da página atual. Utilize Deque.
-
No método
visit(String url):- Adicione o
currentPageàbackStack. - Atualize o
currentPagepara o novourl. - Limpe a
forwardStackpara redefinir o histórico de avanço.
- Adicione o
-
No método
back(int steps):- O loop deve continuar enquanto
steps > 0ebackStacknão estiver vazia. - Empilhe o
currentPagenaforwardStack. - Retire a última página da
backStacke atribua acurrentPage. - Após voltar, retorne o
currentPage.
- O loop deve continuar enquanto
-
No método
forward(int steps):- O loop deve continuar enquanto
steps > 0eforwardStacknão estiver vazia. - Empilhe o
currentPagenabackStack. - Retire a última página da
forwardStacke atribua acurrentPage. - Após avançar, retorne o
currentPage.
- O loop deve continuar enquanto
-
No método
getCurrentPage():- Retorne simplesmente o
currentPage.
- Retorne simplesmente o
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo