在瀏覽器中,我們經常使用前進和后退按鈕來在不同頁面之間切換。如果你正在做一個Java應用程序并且需要模擬這個行為,你可以使用以下代碼來實現。
import java.util.Stack; public class Browser { private Stackhistory = new Stack (); private Stack forward = new Stack (); private String currentUrl = ""; public void goBack() { if (!history.empty()) { forward.push(currentUrl); currentUrl = history.pop(); } } public void goForward() { if (!forward.empty()) { history.push(currentUrl); currentUrl = forward.pop(); } } public void goTo(String url) { if (!currentUrl.equals(url)) { history.push(currentUrl); currentUrl = url; forward.clear(); } } public String getCurrentUrl() { return currentUrl; } }
首先,我們需要使用兩個Stack來跟蹤歷史記錄和前進記錄。我們還需要一個當前URL變量來存儲當前打開的URL。
當用戶想要返回到之前訪問過的頁面時,我們可以在history Stack中彈出前一個URL并將其添加到forward Stack中。同樣,當用戶想要前進到之前訪問過的頁面時,我們可以在forward Stack中彈出前一個URL并將其添加到history Stack中。
最后,在goTo方法中,我們檢查當前URL是否等于要導航到的URL。如果不是,則將當前URL添加到history Stack中,將當前URL設置為要導航到的URL,并清除forward Stack。
使用這個實現,我們可以輕松地在Java應用程序中模擬瀏覽器的前進和后退功能。