Java SE 8 Programmer II Exam - Question Answer

Java SE 8 Programmer II Exam - Question Answer

Question

Given the code fragment: Stream<Path> files = Files.walk(Paths.get(System.getProperty("user.home"))); files.forEach (fName -> {//line n1 try { Path aPath = fName.toAbsolutePath(); //line n2 System.out.println(fName + ":" + Files.readAttributes(aPath, Basic.File.Attributes.class).creationTime ()); } catch (IOException ex) { ex.printStackTrace(); }); What is the result?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

A.

The given code uses the Files.walk() method to traverse all the files and directories under the home directory of the current user. It then prints the attributes of each file, including the creation time.

Let's go through the code fragment line by line:

less
Stream<Path> files = Files.walk(Paths.get(System.getProperty("user.home")));

This line creates a Stream of Path objects that represent all the files and directories under the home directory of the current user. The Files.walk() method recursively traverses the directory tree and returns a stream of all the paths.

less
files.forEach(fName -> { // ... });

This line iterates over each path in the stream and executes the code within the lambda expression for each path.

csharp
try { Path aPath = fName.toAbsolutePath(); //line n2 System.out.println(fName + ":" + Files.readAttributes(aPath, Basic.File.Attributes.class).creationTime()); } catch (IOException ex) { ex.printStackTrace(); }

This code within the lambda expression tries to get the absolute path of the file/directory (fName.toAbsolutePath()) and then prints the path and the creation time of the file/directory (Files.readAttributes(aPath, Basic.File.Attributes.class).creationTime()). It also catches any IOException that might occur.

So, the answer is (C) The files in the home directory are listed along with their attributes. The code successfully compiles and executes, and prints the attributes of all the files and directories under the home directory of the current user.