Learn to Teach Java: Boolean Expressions, If Statements, and Iteration (Coursera)

Learn to Teach Java: Boolean Expressions, If Statements, and Iteration (Coursera)

Learn to program with Boolean Expressions, If Statement, and For and While Loops in Java, and prepare to teach others using the free, online interactive CS Awesome textbook. In this course for teachers we'll guide you both in learning Java concepts and skills but also in how to effectively teach those to your students.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

This course will support you in teaching the Advanced Placement Computer Science A course or a similar introductory university-level programming course. We'll cover the critical Java concepts of selection (if statements) and iteration (loops), as covered in the APCS A Units 3 and 4. Each topic will begin by relating Java to block-based programming languages and then provide video overviews of CS Awesome content along with additional materials to supplement learning for your students.
You'll engage with additional materials to support your teaching including "deep dive" classroom discussion questions, assessment overviews, code tracing and problem solving skills for your students, including preparation for free response coding questions.
Course 2 of 5 in the Learn to Teach Java Specialization.

Syllabus

WEEK 1
Welcome!
Meet Dr. Simon and fellow learners in this class! Find out what you’ll be doing and learning.
Boolean Expressions and If Statements (Unit 3): Learn as a Student
Programs would be very boring (and not useful) if they always performed the same instructions every time we ran them. We'll see how boolean expressions can be sued to control selection (if statements) to allow instructions be done based on some condition (e.g, randomness or user input). Using CS Awesome, we'll learn to create boolean expressions including logical AND and OR operators and how to use these to control if statements to allow programs to check conditions to vary behavior.

WEEK 2
Boolean Expressions and If Statements (Unit 3): Teacher Powerup
This week we'll go deeper and engage with some resources to support your teaching. You'll explore some questions to use in classroom analysis discussions (Peer Instruction), learn how these concepts are commonly assessed, prepare to help students who are having trouble with CS Awesome assessments, and begin to scaffold students problem solving skills. Finally, you can check your own Unit 3 Java and Java Teacher mastery on our end of Unit 3 quizzes.

WEEK 3
Iteration (Unit 4): Learn as a Student
Iteration, the power to repeat a set of instructions, is where the full power of computing comes from. Really, without it, we wouldn't have computers. Using CS Awesome, we'll learn to define conditional (while) and counted (for) loops and start to see the kind of more interesting things we can do with loops!

WEEK 4
Iteration (Unit 4): Teacher Powerup
This week we'll go deeper and engage with some resources to support your teaching. You'll explore some questions to use in classroom analysis discussions (Peer Instruction) and learn how these concepts are commonly assessed. This Unit we have a large number of resources not found in CS Awesome to help students understand how they can use the Java concepts we've learned to solve some real-world problems. Finally, you can check your own Unit 4 Java and Java Teacher mastery on our end of Unit 4 quizzes.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Teacher SEL: Programs, Possibilities, and Contexts (Coursera) Coursera
University of Colorado Boulder

Teacher SEL: Programs, Possibilities, and Contexts (Coursera)

Social and emotional learning, or SEL, student programs have flourished in schools during the last decade. Unfortunately inadequate attention has been paid to teachers’ social and emotional learning. In this course the instructors (Randy Testa and Dan Liston) introduce and examine distinct and established teacher SEL programs, as well as some alternative possibilities.

Jun 22nd 2026
4 Weeks
Concurrent Programming in Java (Coursera) Coursera
Rice University

Concurrent Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of concurrent programming in the context of Java 8. Concurrent programming enables developers to efficiently and correctly mediate the use of shared resources in parallel programs. By the end of this course, you will learn how to use basic concurrency constructs in Java such as threads, locks, critical sections, atomic variables, isolation, actors, optimistic concurrency and concurrent collections, as well as their theoretical foundations (e.g., progress guarantees, deadlock, livelock, starvation, linearizability).

Jun 22nd 2026
4 Weeks
Algorithmic Toolbox (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Algorithmic Toolbox (Coursera)

The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming. We will learn a lot of theory: how to sort data and how it helps for searching; how to break a large problem into pieces and solve them recursively; when it makes sense to proceed greedily; how dynamic programming is used in genomic studies. You will practice solving computational problems, designing new algorithms, and implementing solutions efficiently (so that they run in less than a second).

Jun 22nd 2026
5-12 Weeks
Julia Scientific Programming (Coursera) Coursera
University of Cape Town

Julia Scientific Programming (Coursera)

This four-module course introduces users to Julia as a first language. Julia is a high-level, high-performance dynamic programming language developed specifically for scientific computing. This language will be particularly useful for applications in physics, chemistry, astronomy, engineering, data science, bioinformatics and many more.

Jun 22nd 2026
4 Weeks
Algorithms, Part II (Coursera) Coursera
Princeton University

Algorithms, Part II (Coursera)

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

Jun 22nd 2026
5-12 Weeks
Introduction to Programming with MATLAB (Coursera) Coursera
Vanderbilt University

Introduction to Programming with MATLAB (Coursera)

This course teaches computer programming to those with little to no previous experience. It uses the programming system and language called MATLAB to do so because it is easy to learn, versatile and very useful for engineers and other professionals. MATLAB is a special-purpose language that is an excellent choice for writing moderate-size programs that solve problems involving the manipulation of numbers.

Jun 22nd 2026
5-12 Weeks
Disability Inclusion in Education: Building Systems of Support (Coursera) Coursera
University of Cape Town

Disability Inclusion in Education: Building Systems of Support (Coursera)

Worldwide millions of children are not able to fully participate in schooling, and this is especially a problem for children with disabilities. In this course, we explore the support that teachers need in order to meet the needs of children with severe to profound hearing, visual and intellectual disabilities. We consider how this can be done by talking with a range of experts (from teachers to activists) about inclusive education as well as sharing experiences of education.

Jun 22nd 2026
5-12 Weeks
Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera) Coursera
Hebrew University of Jerusalem

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera)

In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform. In particular, you will implement a virtual machine and a compiler for a simple, Java-like programming language, and you will develop a basic operating system that closes gaps between the high-level language and the underlying hardware platform.

Jun 22nd 2026
5-12 Weeks
Distributed Programming in Java (Coursera) Coursera
Rice University

Distributed Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading.

Jun 22nd 2026
4 Weeks
SEL for Students: A Path to Social Emotional Well-Being (Coursera) Coursera
University of Colorado Boulder

SEL for Students: A Path to Social Emotional Well-Being (Coursera)

Social and emotional learning, or SEL, programs have flourished in schools during the last decade. In this course the instructor (Emily Price) introduces you to the history and framings of social and emotional learning preK-12 curricula, as well as various elementary, middle, and high school SEL programs and associated research.

Jun 22nd 2026
5-12 Weeks
TDD - Desenvolvimento de Software Guiado por Testes (Coursera) Coursera
Instituto Tecnológico de Aeronáutica

TDD - Desenvolvimento de Software Guiado por Testes (Coursera)

Neste curso, assumimos que você já sabe projetar e desenvolver programas mais complexos em Java, com método e organização graças às boas práticas e princípios exercitados no curso anterior; mas você talvez não se sinta ainda confortável em projetar programas usando técnicas ágeis, como o desenvolvimento guiado por testes (TDD).

Jun 22nd 2026
4 Weeks