2012-01-09 10 views
1

私は月曜日の実際のケースを持っています。私は私が探しているエントリに基づいて結果のテーブルを横断しようとしています。たとえば、ページには15件の結果が表示され、結果はn件です。私はこれらのページを横断するためにロジックをダウンさせることはできません。私はこれをしたい: エントリが1-15でない場合は2ページへ、16-30ページへ3などへ。エントリがあるページに行くまで。 もう1つの例:私が探しているエントリーは300エントリーのうち64エントリーなので、エントリーを見るには5ページに行く必要があります。Java論理問題番号を扱う

私は15、モジュロなどの倍数でさまざまなことをしていて、動作させることができません。

これで任意の助けをいただければ幸い

、コーヒーの...

+0

ページングと参照を行うコードの部分を投稿しないでください。 – milan

+0

静的なのは、私が探しているエントリの番号と15ページの結果です。 nページの数にすることができます。 – whitewolfpgh

+0

では何ですか?詳細情報?どんな方法で、 –

答えて

7

を得ることはあなたが望むように聞こえる:(。と仮定すると、1ベースのページ番号と結果数)

int pageNumber = ((resultNumber - 1)/pageSize) + 1; 

このような2ページにページ番号1、16-30に結果1-15をマッピングします

、31-45ページ3には、など

+0

私はこれがそれを行うと思います、ありがとう、私の人生のためにそれを把握できなかった笑!これを試してみましょう。 – whitewolfpgh

+0

もう少し 'leet: 'int pageNumber = --resultNumber/pageSize + 1;'とは何か。そして、 "はい" ...私はそれが副作用としてあなたのresultNumberを変えるだろう*可* – Bohemian

+2

@ボヘミアンだと思う。明らかに好ましくない。 –

0

何か:

Start offset = (Number of page - 1) * Results Per Page 
    End offset = (Number of page) * Results Per Page 
    Offset on a page = (Number of item) mod Results per page (Substract 1 to have zero-based index) 
    Page Number = (Number of item - 1)/Results Per Page + 1 (Substract 1 to have zero-based index)