Aşağıdaki kodum var.Özel kontrol edilen istisna java8 lambda ifadesiyle nasıl atılır?
private static void readStreamWithjava8() {
Stream<String> lines = null;
try {
lines = Files.lines(Paths.get("b.txt"), StandardCharsets.UTF_8);
lines.forEachOrdered(line -> process(line));
} catch (IOException e) {
e.printStackTrace();
} finally {
if (lines != null) {
lines.close();
}
}
}
private static void process(String line) throws MyException {
// Some process here throws the MyException
}
İşte benim process(String line)
yöntem kontrol istisna atar ve lambda içinden bu yöntemi çağırıyorum. Bu noktada, RuntimeException
atmadan MyException
readStreamWithjava8()
yönteminden atmanız gerekir.
Bunu java8 ile nasıl yapabilirim?
Not: "Files.lines()" – assylias
@assylias ile kaynakları kullanmayı deneyin. Bazı örnek kodları paylaşabilir misiniz? – user3496599
'(Stream lines = Files.lines (Paths.get (...))) {...}} ve sonuncu bloğu kaldırın. –
assylias