Reputation: 2983
for (int page = 0; page < pageNum;) {
copy.addPage(copy.getImportedPage(reader, ++page));
}
here ++page is control variable getting modified , how to achieve in better way ?
Upvotes: 0
Views: 1208
Reputation: 2315
You can do it in different ways
for (int page = 1; page <= pageNum; ++page) {
copy.addPage(copy.getImportedPage(reader, page));
}
for (int page = 1; page <= pageNum; page++) {
copy.addPage(copy.getImportedPage(reader, page));
}
int page = 1;
while (page <= pageNum) {
copy.addPage(copy.getImportedPage(reader, page));
page++;
}
int page = 0;
while (page < pageNum) {
page++;
copy.addPage(copy.getImportedPage(reader, page));
}
int page = 0;
while (page < pageNum) {
copy.addPage(copy.getImportedPage(reader, ++page));
}
Upvotes: 0
Reputation: 7357
Do you mean this?
for (int page = 0; page < pageNum; page++) {
copy.addPage(copy.getImportedPage(reader, page+1));
}
Upvotes: 3
Reputation: 6675
Try using the while when you do not have the control over increment operation
int page=0;
while(page<pageNum){
copy.addPage(copy.getImportedPage(reader, ++page));
}
Upvotes: 4
Reputation: 1890
copy.addPage(copy.getImportedPage(reader, ++page));
using pre-increment operator the value will be updated first
i.e it will be called with the incremented value of page which is 1
copy.addPage(copy.getImportedPage(reader, page++));
using post-increment operator the value will be updated after
i.e it will be called with the non incremented value of page which is 0
use the pre or post increment operator according to your requirement.
Upvotes: 1