Maison  >  Questions et réponses  >  le corps du texte

java - 怎么实现调用一个方法后,将该方法中存储的信息,清零啊!!

调用方法:
int pageNo=ps.getFenyePageNo3(param,lastPage);

方法代码:

private int currentPageNo3=1;

public int getFenyePageNo3(String param, int lastPage) {
    if ("first".equals(param) || null == param) {
        currentPageNo3 = 1;
    }
    else if ("next".equals(param)) {
        if (currentPageNo3 < lastPage) {
            System.out.println("当前页3::"+currentPageNo3);
            currentPageNo3++;    
        }
    } 
    else if ("previous".equals(param)) {
        if (currentPageNo3 > 1) {
            currentPageNo3--;
        }
    }
    else if ("last".equals(param)) {
        currentPageNo3 = lastPage;
    }
    return currentPageNo3;
}

没错这是个分页::

出现的错误情况::
假如第一次调用这个方法时,我点击翻页,在第20页时停止了,当第二次调用这个方法时,在点击翻页,会出现第21页,而不是第二页。

我想实现,每调用完一次这个getFenyePageNo3()方法,就将保存在currentPageNo3里面的值清空,当再次调用这个方法的时候,不会出现currentPageNo3还保存着上一次调用保存的页数。

这样描述还清楚吗

ringa_leeringa_lee2717 Il y a quelques jours640

répondre à tous(3)je répondrai

  • PHP中文网

    PHP中文网2017-04-18 09:46:13

    Cela dépend de la façon dont vous int pageNo=ps.getFenyePageNo3(param,lastPage);psez cet objet. S'il s'agit d'un singleton, il sera certainement enregistré. S'il est nouveau à chaque fois, il ne sera certainement pas enregistré. Ou vous avez attribué currentPageNo3 lors de sa transmission depuis le front-end.

    répondre
    0
  • 黄舟

    黄舟2017-04-18 09:46:13

    Vous pouvez simplement déclarer currentPageNo3 comme variable locale de la méthode getFenyePageNo3

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-18 09:46:13

    Votre idée de la pagination est-elle fausse ? Ne vaudrait-il pas mieux accepter directement deux paramètres (pageNo, pageSize). Pourquoi devrions-nous enregistrer quelle page dans la pagination ?

    S'il s'agit de Java Web, vous n'êtes pas étroitement lié au client et au serveur.

    répondre
    0
  • Annulerrépondre