- Length: 798 pages
- Edition: 1
- Language: English
- Publisher: Apress
- Publication Date: 2022-01-01
- ISBN-10: 148427394X
- ISBN-13: 9781484273944
- Sales Rank: #2454947 (See Top 100 Books)
Expand your knowledge of Java with this entertaining learning guide, which features 100+ exercises and programming challenges. Java Challenges will prepare you for your next exam or job interview, and covers many practical topics, such as strings, arrays, data structures, recursion, and date and time. The APIs and other material included in this book are Java 17 compatible.
Each topic is addressed in its own separate chapter, starting with an introduction to the basics and followed by multiple exercises of varying degrees of difficulty, helping you to improve your programming skills effectively. Detailed sample solutions, including the algorithms used for all tasks, are included to maximize your understanding of each area.
Author Michael Inden also describes alternative solutions and analyzes possible pitfalls and typical errors. Three appendices round out the book: one covering JShell, which is often helpful for trying out the code snippets and examples in the book, followed by an introduction to JUnit 5 for unit testing and verifying solutions, while the final appendix explains O-notation for estimating performance.
After reading this book, you’ll be prepared to take the next step in your career or tackle your next personal project. All source code is freely available for download via the Apress website.
What You Will Learn
- Improve your Java knowledge by solving enjoyable but challenging programming puzzles
- Solve mathematical problems, recursions, strings, arrays and more
- Manage data processing and data structures like lists, sets, maps
- Handle advanced recursion as well as binary trees, sorting and searching
- Gamify key fundamentals for fun and easier reinforcement
Who This Book Is For
Professional software developers, makers, as well as computer science teachers and students. At least some prior experience with Java programming is recommended.