Introduction to Java Programming and Data Structures, 13th edition
Published by Pearson (August 14, 2023) © 2024
- Y Daniel Liang Georgia Southern University
eTextbook
Revel
- Inspire engagement through active learning
- Provide an immersive reading experience
- Assess student progress with performance insights
For courses in Java programming.
A fundamentals-first approach
Introduction to Java Programming and Data Structures integrates programming, data structures and algorithms into 1 text. It takes a fundamentals-first approach, building a strong foundation of basic concepts and techniques before teaching object-oriented and advanced programming. Programming is explained in a problem-driven way that focuses on problem solving rather than syntax, illustrating concepts by example and providing many exercises with various levels of difficulty for practice.
The 13th Edition reflects Java 18 technology and is completely revised in every detail to enhance clarity, content, examples and exercises.
Hallmark features of this title
- A problem-driven, fundamentals-first approach to programming focuses on problem solving rather than syntax.
- The step-by-step presentation guides students in learning essential subjects incrementally.
- A variety of engaging examples and problems provide an interesting, fun context for learning. Examples drawn from math, science, business, finance, gaming, animation and multimedia bring concepts to life and make the material more relatable.
- Programming Exercises are grouped into sections to provide opportunities for students to apply the new skills they have learned on their own.
- Check Points help students evaluate their learning as they read through a chapter.
- Notes, Tips, Cautions and Design Guides offer valuable advice and insight on program development.
New and updated features of this title
- UPDATED/NEW: Code and discussions are compatible with the latest Java 18 language, technology and recent programming trends. New examples and exercises use interesting new Java features up to Java 18.
- NEW: Cloud storage and touchscreens are included in section 1.2. Sections 1.11 and 1.12 are updated for NetBeans 15 and Eclipse 2022.
- NEW: Java switch statements and expressions are added in Section 3.13.
- NEW: Java text blocks to form a multi-line string are covered in Section 4.7.
- NEW: Syntax on instanceof pattern matching to simplify coding is introduced in Section 11.9. Section 11.16 introduces LomBok for generating boilerplate code using annotations.
- NEW: Java records for creating simple objects to hold data are introduced in Section 13.11.
Features of Revel for the 13th Edition
- NEW/UPDATED: Multiple-choice quizzes, programming quizzes, and end-of-chapter programming projects let you gauge students' comprehension frequently to address learning gaps. Multiple-choice quizzes are now assignable and gradable.
- UPDATED: Check Point self-assessment items test students' knowledge with multiple-choice, matching, and free-style coding questions at the end of each section.
- NEW: Video Quiz tool allows you to upload and share your own video content to create time-stamped multiple-choice questions to test students' understanding.
- NEW: Shared Media for peer-to-peer learning makes it easy for you and your students to post and respond to videos and other forms of media to reinforce learning. Students can record and upload presentations for grading and peer review collaboration.
- UPDATED: Create your own scored multiple-choice assessment items to add to existing end-of-section and end-of-chapter quiz sets.
- Assignable and automatically graded programing exercises let students experience the power of practice and get immediate personalized feedback based on their responses.
- VideoNotes show how to solve problems completely in narrated step-by-step tutorials.
- Live Code Examples let students practice in a live coding environment by modifying populated code and viewing the results.
- Code animations step students through the code line-by-line, showing what happens in the program.
- Introduction to Computers, Programs, and Java
- Elementary Programming
- Selections
- Mathematical Functions, Characters, and Strings
- Loops
- Methods
- Single-Dimensional Arrays
- Multidimensional Arrays
- Objects and Classes
- Object-Oriented Thinking
- Inheritance and Polymorphism
- Exception Handling and Text I/O
- Abstract Classes and Interfaces
- JavaFX Basics
- Event-Driven Programming and Animations
- JavaFX UI Controls and Multimedia
- Binary I/O
- Recursion
- Generics
- Lists, Stacks, Queues, and Priority Queues
- Sets and Maps
- Developing Efficient Algorithms
- Sorting
- Implementing Lists, Stacks, Queues, and Priority Queues
- Binary Search Trees
- AVL Trees
- Hashing
- Graphs and Applications
- Weighted Graphs and Applications
- Aggregate Operations for Collection Streams
APPENDICES
- Java Keywords
- The ASCII Character Set
- Operator Precedence Chart
- Java Modifiers
- Special Floating-Point Values
- Number Systems
- Bitwise Operations
- Regular Expressions
- Enumerated types
- The Big-O, Big-Omega, and Big-Theta Notations
About our author
Dr. Liang is a professor of Computer Science at Georgia Southern University. He earned his Ph.D. in Computer Science from the University of Oklahoma in 1991. Prior to joining Armstrong State University (now consolidated with Georgia Southern University), Dr. Liang was an Associate Professor in computer science at Purdue University in Fort Wayne, Indiana, where he twice received the Excellence in Research award.
Dr. Liang was trained in theoretical computer science. He has published in the SIAM Journal on Computing, Discrete Applied Mathematics, Acta Informatics, and Information Processing Letters. He has written books on programming, data structures, and computer graphics. His popular computer science texts are widely used in the world.
Dr. Liang was elected a Java Champion by Sun Microsystems (now Oracle) in 2005. He has given lectures on programming internationally.
Need help? Get in touch