Skip to main content

Diamond Pattern with Asterick and Space Example in Java

1 min read Updated May 29, 2026
Share:
On this page (8sections)

Introduction

Diamond pattern with Asterick and Space is a classic Java console program that demonstrates the concept with complete source code and sample output. Pattern programs print shapes with nested loops — common in exams and interviews.

This tutorial walks through the program line by line, explains how the logic works, and highlights best practices you can apply in your own code.

Diamond Pattern Example Program

import java.util.Scanner;

class StarPatternExampleThree {

    public static void main(String[] args) {
        System.out.println("Enter the number of rows for pattern : ");
        Scanner scanner = new Scanner(System.in);
        int rowsCount = scanner.nextInt();

        int spacesCount = 0;
        for (int i = rowsCount; i > 0; i--) {
            for (int j = i; j > 0; j--) {
                System.out.print("*");
            }
            for (int j = 0; j < spacesCount; j++) {
                System.out.print(" ");
            }
            for (int j = i; j > 0; j--) {
                System.out.print("*");
            }
            spacesCount = spacesCount + 2;
            System.out.println("");
        }

        spacesCount = (rowsCount * 2) - 2;
        for (int i = 0; i < rowsCount; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print("*");
            }
            for (int j = 0; j < spacesCount; j++) {
                System.out.print(" ");
            }
            for (int j = 0; j <= i; j++) {
                System.out.print("*");
            }
            spacesCount = spacesCount - 2;
            System.out.println("");
        }
    }
}

Sample Output

Enter the number of rows for pattern :
10
********************
*********  *********
********    ********
*******      *******
******        ******
*****          *****
****            ****
***              ***
**                **
*                  *
*                  *
**                **
***              ***
****            ****
*****          *****
******        ******
*******      *******
********    ********
*********  *********
********************

When to use

Use pattern logic when practicing nested loops or preparing for coding tests that ask for triangle or pyramid output.

How it works

  1. Execution begins in the main method — the JVM calls this method when you run the class.

  2. import java.util.Scanner; imports a class used later in the program.

  3. A println / print call writes text to the console — part of the sample output below.

  4. A Scanner reads typed input from the keyboard (System.in).

  5. int rowsCount = scanner.nextInt(); updates a variable used in the calculation or output.

  6. int spacesCount = 0; updates a variable used in the calculation or output.

  7. for (int i = rowsCount; i > 0; i--) { updates a variable used in the calculation or output.

  8. A println / print call writes text to the console — part of the sample output below.

Best Practices

  • Use meaningful variable and class names that describe their purpose.
  • Compile and run the program locally — modify values to see how output changes.
  • Read compiler errors carefully; they usually point to the exact line to fix.

Common Mistakes

  • Copying code without understanding each line — practice by changing one statement at a time.
  • Mismatching the public class name and the .java filename.
  • Forgetting semicolons at the end of statements.

Frequently Asked Questions

What does the Diamond pattern with Asterick and Space program demonstrate?
It shows how to implement diamond pattern with asterick and space in Java with a complete runnable example and expected console output.
How do I run this Java program?
Save the code in a `.java` file matching the public class name, compile with `javac`, then run with `java ClassName`.
When would I use this pattern?
Use pattern logic when practicing nested loops or preparing for coding tests that ask for triangle or pyramid output.

Related Tutorials

Search tutorials