2016-05-13 7 views
0

この質問はおそらく時間の欲求不満を解決してくれましたが、私はリストの最後/最初の要素に関する回答を見つけるか、特定の項目などを得ることができるようですJavaのリストの最後のX個のアイテムを取得する

私は100要素のリストがあり、最後の40要素を返したいとします。それ、どうやったら出来るの?私はこれをやろうとしましたが、私に1つの要素を与えました。

Post last40posts = posts.get(posts.size() -40); 

ありがとうございました。

+0

あなたは配列やリストについて話していますか?あなたのテキストは「配列」と言っていますが、あなたのコードはリストを意味しています。それらは2つの非常に異なるものです。 – Tunaki

+0

ああ、あなたは正しいです、ごめんなさい。私はリストを意味する..編集します。 – BananaBackend

+1

http://stackoverflow.com/questions/2895342/java-how-can-i-split-an-arraylist-in-multiple-small-arraylistsを参照してください。 'size() - 40'から' size() 'に' subList'を使って最後の40要素を得ることができます。また、http://stackoverflow.com/questions/1279476/truncating-a-list-to-a-given-number-of-elements-in-java(またはhttp://stackoverflow.com/questions/12099721/how-使用するサブリスト) – Tunaki

答えて

0

はあなたのコードがあなたにだけ、単一の要素を与える方法のサブリスト

List<Post> myLastPosts = posts.subList(posts.size()-40, posts.size()); 
+0

ありがとう、Tunakiも私に言った。感謝します! – BananaBackend

+3

厳密には、これは 'subList'の第2引数が排他的であるため、リストの最後の39要素を取得します。 –

+0

'posts.size() - 1'が間違っています。下記のhttps://stackoverflow.com/a/372​​19667/907576をご覧ください。 – radistao

2

を使用しています。 次のようなサブリストメソッドを使用する必要があります。

posts.subList(posts.size()-40, posts.size()) 
+0

ああ!指摘してくれてありがとう(編集済み) –

関連する問題