ฉันมีปัญหากับสตรีมของ Java 8 foreach ที่พยายามย้ายรายการถัดไปแบบวนซ้ำ ฉันไม่สามารถตั้งค่าคำสั่งเช่นcontinue;
ใช้return;
งานได้ แต่คุณจะออกจากลูปในกรณีนี้ ฉันต้องไปยังรายการถัดไปแบบวนซ้ำ ฉันจะทำเช่นนั้นได้อย่างไร?
ตัวอย่าง (ไม่ทำงาน):
try(Stream<String> lines = Files.lines(path, StandardCharsets.ISO_8859_1)){
filteredLines = lines.filter(...).foreach(line -> {
...
if(...)
continue; // this command doesn't working here
});
}
ตัวอย่าง (ที่ทำงาน):
try(Stream<String> lines = Files.lines(path, StandardCharsets.ISO_8859_1)){
filteredLines = lines.filter(...).collect(Collectors.toList());
}
for(String filteredLine : filteredLines){
...
if(...)
continue; // it's working!
}
continue
จะย้ายไปยังรายการถัดไปโดยไม่มีการเปลี่ยนแปลงการทำงานใด ๆ
else
บล็อก หากไม่มีอะไรหลังจากcontinue
นั้นให้วางบล็อก if และดำเนินการต่อ: ไม่มีประโยชน์