sendRedirect() sends a message to the browser asking it to load the new link, which may be either local or remote.
Consider the following, which processes some data then displays the menu page:
Once they get back to the main page, if they reload the page the original form gets called and processes the data again when the person just wanted to refresh the page. The display is still coupled with the previous processing.
If the client reloads, they get the index page again.