Page는 전체 데이터 개수, 전체 페이지 수, 현재 페이지 정보, 정렬 정보 등 추가적인 메타데이터를 모두 포함한다.
{
"content": [
{ "id": 1, "title": "post1" },
{ "id": 2, "title": "post2" }
],
"pageable": {
"pageNumber": 0,
"pageSize": 10
},
"totalElements": 132,
"totalPages": 14,
"last": false,
"size": 10,
"number": 0,
"sort": {},
"numberOfElements": 10,
"first": true,
"empty": false
}
Slice는 content + 다음 페이지 존재 여부만 알려주며, 전체 개수와 전체 페이지 수는 제공하지 않는다.
{
"content": [
{ "id": 1, "title": "post1" },
{ "id": 2, "title": "post2" }
],
"pageable": {
"pageNumber": 0,
"pageSize": 10
},
"size": 10,
"number": 0,
"sort": {},
"numberOfElements": 10,
"first": true,
"last": false,
"empty": false
}
totalElements) 제공totalPages) 제공int sum = 0;
for (int i : list) {
sum += i;
}
int sum = list.stream()
.mapToInt(i -> i)
.sum();
for문
List<Integer> result = new ArrayList<>();
for (int i : list) {
if (i % 2 == 0) result.add(i);
}
Stream
List<Integer> result = list.stream()
.filter(i -> i % 2 == 0)
.toList();