Java 8: Stream, NIO и Lambda - PullRequest
       17

Java 8: Stream, NIO и Lambda

0 голосов
/ 26 декабря 2018

У меня есть файл, который содержит несколько строк.Каждая строка может быть преобразована в JSONObject.

Пример строки,

{"name": "a", "age": 28}
{"name": "b", "age": 20}
{"name": "c", "age": 30}

Я читаю этот файл, используя новый IO

Files.lines(path)

Я хочу использовать поток и преобразоватькаждая строка в JSONObject, как,

JSONObject obj = new JSONObject(line);

Я не понимаю, как сделать, используя поток и лямбда-выражения.Есть ли способ?

1 Ответ

0 голосов
/ 26 декабря 2018

использование Stream#map, пример:

List<JSONObject> result;
try (Stream<String> stream = Files.lines(Paths.get(fileName))) {    
        result = stream.map(line -> new JSONObject(line)) // or map(JSONObject::new)
                       .collect(Collectors.toList());       
} catch (IOException e) { /* handle exception */}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...