Summary

In this chapter, we demonstrated several of the Java 8 functional features to create a Zork-like game. Using console input, a player can navigate through a world picking up and dropping items along the way. New worlds can be configured using a file containing the description of the world.

We showed how to use the command pattern to handle commands. The commands were implemented using a combination of lambda expressions and other methods. Adding command aliases involved adding a different keyword to a hash map of commands.

Streams were used in a number of places to simplify processing and make the code more readable. Also used in conjunction with lists and maps was the forEach method, which replaced the need for imperative loops.

At several ...

Get Learning Java Functional Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.