Java教程

如何在Java中打印图案

Java模式程序可以增强编码技能,逻辑和循环概念。在 Java访谈中,通常要求检查程序员的逻辑和思维。我们可以用不同的设计打印 Java模式程序。要学习模式程序,我们必须对Java循环有深入的了解,例如 for 循环 do-while 循环。在本部分中,我们将学习 如何在Java中打印模式
我们已经将 Java模式程序分为三类:
起始符 数字模式 字符模式
在转到模式程序之前,让我们看一下方法。
每当您为模式程序设计逻辑时,首先在块中绘制该模式,如下所示图片。该图清楚地显示了该模式。
每个模式程序都有两个或两个以上的循环。循环数取决于模式或逻辑的复杂性。第一个for循环适用于行,第二个循环适用于列。在模式程序中, Java for 循环被广泛使用。
如何在Java中打印模式
在上述模式中, i 表示, j 表示。我们看到第一行只打印一个星星。第二行打印两个星星,依此类推。 彩色块打印 空格
让我们为模式创建逻辑,如上所示。在下面的代码段中,我们从0开始的行和列值。我们也可以从1开始的行,这是您的选择。
for(int i=0;i<row;i++){
    for(int j=0;j<=i;j++){
        System.out.print("* ");
    }
    System.out.println();
在上面的代码段中,第一个for循环用于行,第二个for循环用于列。
让我们逐步查看代码的执行, n = 4 (我们要打印的行数)。
迭代1:
        for i=0, 0<4 (true)
        for j=0, j<=0 (true)
第一条 print 语句在第一行打印一个星号,第二条 println 语句打印空格并将光标移到下一行。
*
现在i和j的值增加到1。
迭代2:
        for i=1, 1< 4 (true)
        for j=1, 1< =1 (true)
第一条 print 语句在第二行打印两个星星,第二条 println 语句打印空格并将光标移到下一行。
*
* *
现在i和j的值增加到2。
迭代3:
        for i=2, 2<4 (true)
        for j=2, 2<=2 (true)
第一条 print 语句在第三行打印三颗星,第二条 println 语句打印空格并将光标置于下一行。
*
* *
* * *
现在i和j的值增加到3。
迭代4:
        for i=3, 3<4 (true)
        for j=3, 3<=3 (true)
第一条 print 语句在第四行打印四颗星,第二条 println 语句打印空格并将光标置于下一行。
*
* *
* * *
* * * *
现在i和j的值增加到4。
        for i=4, 4<4 (false)
当i的值等于行数时,程序的执行将终止。

星型

1、直角三角形图案
public class RightTrianglePattern {
    public static void main(String args[]) {
                int i, j, row=6;
        for(i=0;i<row;i++) {
            //inner loop         for columns
            for(j=0;j<=i;j++) {
                //prints stars
                System.out.print("* ");
            }
            //throws the cursor in a new line after printing each line
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
2、左三角形星型
public class LeftTrianglePattern{
    public static void main(String args[]) {
        int i, j, row = 6;
                for (i=0;i<row;i++) {
            //inner loop work         for space
                    for (j=2*(row-i);j>=0;j--) {
                System.out.print(" ");
            }
            //inner loop         for columns
                    for (j=0;j<=i;j++ ) {
                //prints star
                System.out.print("* ");
            }
            //throws the cursor in a new line after printing each line
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
3、金字塔星型
public class PyramidPattern{
    public static void main(String args[]) {
        int i, j, row = 6;
        for (i=0;i<row;i++) {
            for (j=row-i;j>1;j--) {
                //prints space between two stars
                System.out.print(" ");
            }
        for (j=0;j<=i;j++ ) {
                //prints star
                System.out.print("* ");
            }
        System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
4、菱形图案
import java.util.Scanner;
public class DiamondPattern{
    public static void main(String args[]){
        int row, i, j, space = 1;
        System.out.print("Enter the number of rows you want to print: ");
        Scanner sc = new Scanner(System.in);
        row = sc.nextInt();
        space = row - 1;
        for (j = 1;j= row;j++){
            for (i = 1;i<= space;i++){
                System.out.print(" ");
            }
            space--;
            for (i = 1;i <= 2 * j - 1;i++){
                System.out.print("*");
            }
            System.out.println("");
        }
        space = 1;
        for (j = 1;j<= row - 1;j++){
            for (i = 1;i<= space;i++){
                System.out.print("");
            }
            space++;
            for (i = 1;i<= 2 * (row - j) - 1;i++){
                System.out.print("*");
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
5、向下三角形星型
public class DownwardTrianglePattern{
    public static void main(String[] args){
        int rows=7;
        //inner loop
        for (int i= rows-1;i>=0 ;i--){
            //outer loop
            for (int j=0;j<=i;j++){
                //prints star and space
                System.out.print("*" + " ");
            }
            //throws the cursor in the next line after printing each line
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
6、镜像的直角三角形星型
public class MirroredRightTrianglePattern {
    public static void main(String[] args){int n=7;
        //inner loop
        for (int i= 0;i<= n;i++){
            //outer loop
            for (int j=1;j<=n-i;j++){
                System.out.print(" ");
            }
            for (int k=0;k<=i;k++){
                System.out.print("*");
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
7、反金字塔星型
public class ReversePyramidPattern{
    public static void main(String[] args){
        int rows=8;
        for (int i= 0;i<= rows-1;i++){
            for (int j=0;j<=i;j++){
                System.out.print(" ");
            }
            for (int k=0;
            k<=rows-1-i;k++){
                System.out.print("*" + " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
8、右下镜星图
public class RightDownMirrorPattern{
    public static void main(String args[]){
        int row=7;
        for (int i= row;i>= 1;i--){
            for (int j=row;j>i;j--){
                System.out.print(" ");
            }
            for (int k=1;k<=i;k++){
                System.out.print("*");
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
9、右帕斯卡的三角形
import java.util.Scanner;
public class RightPascalTrianglePattern{
    public static void main(String[] args){
        int i, j, rows;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows you want to print: ");
        rows = sc.nextInt();
        for (i= 0;i<= rows-1;i++){
            for (j=0;j<=i;j++) {
                System.out.print("*"+ " ");
            }
            System.out.println("");
        }
        for (i=rows-1;i>=0;i--){
            for(j=0;j <= i-1;j++){
                System.out.print("*"+ " ");
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
10、左帕斯卡三角洲
import java.util.Scanner;
public class LeftPascalTrianglePattern{
    public static void main(String[] args){
        int i, j, k, rows;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows you want to print: ");
        rows = sc.nextInt();
        for (i= 1;i<= rows ;i++){
            for (j=i;j <rows ;j++) {
                System.out.print(" ");
            }
            for (k=1;k<=i;k++) {
                System.out.print("*");
            }
            System.out.println("");
        }
        for (i=rows;i>=1;i--){
            for(j=i;j<=rows;j++){
                System.out.print("");
            }
            for(k=1;k<i;k++) {
                System.out.print("*");
            }
            System.out.println("");
        }
        sc.close();
    }
}
输出:
如何Java中的打印模式
11、沙漏星型
import java.util.Scanner;
public class SandglassPattern{
    public static void main(String[] args){
        int i, j, k, n;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows you want to print: ");
        n = sc.nextInt();
        for (i= 0;i<= n-1 ;i++){
            for (j=0;j<i;j++){
                System.out.print(" ");
            }
            for (k=i;k<=n-1;k++) {
                System.out.print("*" + " ");
            }
            System.out.println("");
        }
        for (i= n-1;i>= 0;i--){
            for (j=0;j<i;j++){
                System.out.print("");
            }
            for (k=i;k<=n-1;k++){
                System.out.print("*" + " ");
            }
            System.out.println("");
        }
        sc.close();
    }
}
输出:
如何Java中的打印模式
12、字母星型
import java.util.*;
public class AlphabetPattern{
    public static void main(String[] args){
        int i, j, n=8;
        for (i = 0;i<=n;i++) {
            for (j = 0;j<= n / 2;j++) {
                if ((j == 0 || j == n / 2) && i != 0 || i == 0 &&j != n / 2 || i == n / 2)
                    System.out.print("*");
                else
                    System.out.print(" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
13、三角形星型
import java.util.Scanner;
public class TrianglePattern{
    public static void main(String[] args){
        int i, j, k, rows=9;
        for (i=1;i<= rows ;i++){
            for (j = i;j <rows ;j++) {
                System.out.print(" ");
            }
            for (k = 1;k <= (2*i -1) ;k++) {
                if(k==1 || i == rows || k==(2*i-1)) {
                    System.out.print("*");
                }
                else {
                    System.out.print("");
                }
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
14、下三角图案
import java.util.Scanner;
public class DownTrianglePattern{
    public static void main(String[] args){
        int i, j, k, rows=9;
        for (i=rows;i>= 1 ;i--){
            for (j = i;j<rows ;j++) {
                System.out.print(" ");
            }
            for (k = 1;k <= (2*i -1) ;k++) {
                if( k==1 || i == rows || k==(2*i-1)) {
                    System.out.print("*");
                }
                else {
                    System.out.print("");
                }
            }
            System.out.println("");
        }
    }
}
输出:
如何Java中的打印模式
15、钻石星形图案
import java.util.*;
public class DiamondPattern{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter the number of rows you want to print: ");int rows = sc.nextInt();
        for (i=1;i<= rows ;i++) {
            for (j = rows;j >i ;j--) {
                System.out.print(" ");
            }
            System.out.print("*");
            for (k = 1;k <2*(i -1) ;k++) {
                System.out.print("");
            }
            if( i==1) {
                System.out.println("");
            }
            else{
                System.out.println("*");
            }
        }
        for (i=rows-1;i>= 1 ;i--){
            for (int j = rows;j >i ;j--) {
                System.out.print("");
            }
            System.out.print("*");
            for (int k = 1;k <2*(i -1);k++) {
                System.out.print("");
            }
            if(i==1)
                System.out.println("");
            else
                System.out.println("*");
        }
    }
}
输出:
如何Java中的打印模式

数字模式

1、模式1
public class Pattern1{
    public static void main(String args[]) {
        int i, j,number, n=7;
        for(i=0;i<n;i++){
            number=1;
            for(j=0;j<=i;j++){
                //prints num
                System.out.print(number+ " ");
                //incrementing the value of number
                number++;
            }
            //throws the cursor at the next line after printing each row
                System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
2、模式2
public class Pattern2{
    public static void main(String[] args) {
        int i, j, k = 1;
        //inner loop
        for (i = 1;i <= 7;i++) {
            //outer loop
        for (j = 1;j<i + 1;j++) {
                //prints the value of k
                System.out.print(k++ + " ");
            }
            //throws the cursor at the next line
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
3、模式3
public class Pattern3{
    public static void main(String[] args) {int n = 8;
        //n is the number of rows you want to print
        for (int i = 0;i <n;i++) {
            int number = 1;
            System.out.printf("%" + (n - i) * 2 + "s", "");
            for (int j = 0;j <= i;j++) {
                System.out.printf("%4d", number);
                number = number * (i - j) / (j + 1);
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
4、模式4
public class Pattern4{
    public static void main(String[] args) {
        for (int i = 1;i <= 4;i++){
            int n = 8;
            for (int j = 1;j<= n - i;j++) {
                System.out.print(" ");
            }
            for (int k = i;k >= 1;k--){
                System.out.print(k);
            }
            for (int l = 2;l <= i;l++) {
                System.out.print(l);
            }
            System.out.println();
        }
        for (int i = 3;i >= 1;i--){
            int n = 10;
            for (int j = 0;j<= n - i;j++) {
                System.out.print("");
            }
            for (int k = i;k >= 1;k--){
                System.out.print(k);
            }
            for (int l = 2;l <= i;l++){
                System.out.print(l);
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
5、模式5
import java.util.*;
public class Pattern5{
    public static void main(String[] args) {
        int i, j, rows;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows you want to print: ");
        rows = sc.nextInt();
        for (i = 1;i <= rows;i++) {
            for (j = 1;j <= i;j++){
                System.out.print(i+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
6、模式6
import java.util.*;
public class Pattern6{
    public static void main(String[] args){
        int i, j, rows;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows youy want to print: ");
        rows = sc.nextInt();
        for (i = rows;i >= 1;i--){
            for (j = rows;j >= i;j--){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
7、模式7
import java.util.Scanner;
public class Pattern7{
    public static void main(String[] args) {
        int i, j, n;
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter the number of rows you want to print: ");
        n = sc.nextInt();
        for (i = 1;i <= n;i++) {
            for (j = i;j >= 1;j--){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
8、模式8
public class Pattern8{
    public static void main(String[] args) {
        int rows=9;
        //number of rows to print
        for (int i = 1;i <= rows;i++) {
            int num;
            if(i%2 == 0){
                num = 0;
                for (int j = 1;j <= rows;j++){
                    System.out.print(num);
                    num = (num == 0)? 1 : 0;
                }
            }
            else{
                num = 1;
                for (int j = 1;j <= rows;j++){
                    System.out.print(num);
                    num = (num == 0)? 1 : 0;
                }
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
9、模式9
import java.util.Scanner;
public class Pattern9{
    public static void main(String[] args) {
        int i, j, rows=9;
        for (i = 1;i <= rows;i++) {
            for (j = 1;j <= i;j++){
                if(j%2 == 0){
                    System.out.print(0);
                }
                else{
                    System.out.print(1);
                }
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
10、模式10
public class Pattern10{
    public static void main(String[] args) {
        int n = 10;
        for (int i = 1;i <= n;i++) {
            for (int j = 1;j <i;j++) {
                System.out.print(" ");
            }
            for (int k = i;k <= n;k++) {
                System.out.print(k+" ");
            }
            System.out.println();
        }
        for (int i = n-1;i >= 1;i--) {
            for (int j = 1;j <i;j++) {
                System.out.print("");
            }
            for (int k = i;k <= n;k++){
                System.out.print(k+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
11、模式11
public class Pattern11{
    public static void main(String[] args) {
        int rows=8;
        //Prints upper half pattern
        for (int i = 1;i <= rows;i++) {
            for (int j = 1;j <= i;j++) {
                System.out.print(j+" ");
            }
            System.out.println();
        }
        //prints lower half pattern
        for (int i = rows-1;i >= 1;i--){
            for (int j = 1;j <= i;j++){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
12、模式12
public class Pattern12{
    public static void main(String[] args) {
        int rows=9;
        for (int i = 1;i <= rows;i++) {
            for (int j = rows;j >= i;j--){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
13、模式13
public class Pattern14{
    public static void main(String[] args) {
        int i, j, rows=9;
        for (i = rows;i >= 1;i--) {
            for (j = 1;j <= i;j++){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
14、模式14
public class Pattern14{
    public static void main(String[] args) {
        int rows=7, i, j;
        for (i = rows;i >= 1;i--) {
            for (j = i;j >= 1;j--){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
15、模式15
public class Pattern15{
    public static void main(String[] args) {
        int i, j, rows=9;
        for (i = 1;i <= rows;i++) {
            //Prints first half of the row
            for (j = 1;j <= i;j++) {
                System.out.print(j+" ");
            }
            //Prints second half of the row
            for (j = i-1;j >= 1;j--){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
16、模式16
public class Pattern16{
    public static void main(String[] args) {
        int i, j, rows=9;
        //Prints upper half pattern
        for (i = rows;i >= 1;i--) {
            for (j = 1;j <= i;j++){
                System.out.print(j+" ");
            }
            System.out.println();
        }
        //Prints lower half pattern
        for (i = 2;i <= rows;i++) {
            for (j = 1;j <= i;j++){
                System.out.print(j+" ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
17、模式17
public class Pattern17{
    public static void main(String[] args) {
        int rows=9;
        //Prints upper half pattern
        for (int i = 1;i <= rows;i++) {
            //Prints i spaces at the beginning of each row
            for (int j = 1;j <i;j++) {
                System.out.print(" ");
            }
            //Prints i to rows value at the end of each row
            for (int j = i;j <= rows;j++) {
                System.out.print(j);
            }
            System.out.println();
        }
        //Prints lower half pattern
        for (int i = rows-1;i >= 1;i--) {
            //Prints i spaces at the beginning of each row
            for (int j = 1;j <i;j++) {
                System.out.print("");
            }
            //Prints i to rows value at the end of each row
            for (int j = i;j <= rows;j++){
                System.out.print(j);
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
18、模式18
public class Pattern18{
    public static void main(String[] args) {
        int rows=8;
        for (int i = 1;i <= rows;i++) {
            for (int j = 1;j <= rows-i;j++){
                System.out.print(1);
            }
            for (int j = 1;j <= i;j++){
                System.out.print(i);
            }
            System.out.println();
        }
    }
}
输出:
如何打印拍Java中的tern
19、Pattern-19
public class Pattern19{
    public static void main(String args[]){
        int rows=9;
        for (int i = 1;i <= rows;i++) {
            int num = i;
            for (int j = 1;j <= i;j++) {
                System.out.print(num+" ");
                num = num+rows-j;
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
20、模式20
public class Pattern20{
    public static void main(String[] args) {
        int i, j, k, rows=9;
        for(i=1;i<rows+1 ;i++){
            for(j=i;j <rows+1 ;j++){
                System.out.print(j + " ");
            }
            for(k=1;k <i ;k++){
                System.out.print(k + " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
21、模式21
import java.util.Scanner;
public class Pattern21 {
    public static void main(String[] args) {
        int i, j, min, n;
        System.out.print("Enter the value of n: ");
        Scanner sc= new Scanner(System.in);
        n=sc.nextInt();
        for (i = 1;i <= n;i++) {
            for (j = 1;j <= n;j++) {
                min = i <    j ? i : j;
                System.out.print(n - min + 1+ " ");
            }
            for (j = n - 1;j >= 1;j--) {
                min = i <j ? i : j;
                System.out.print(n - min + 1+ " ");
            }
            System.out.println();
        }
        for (i = n - 1;i >= 1;i--) {
            for (j = 1;j <= n;j++) {
                min = i <j ? i : j;
                System.out.print(n - min + 1+ " ");
            }
            for (j = n - 1;j >= 1;j--) {
                min = i <j ? i : j;
                System.out.print(n - min + 1+ " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式

字符模式

1、直角三角形字母图案
public class RightAlphabaticPattern{
    public static void main(String[] args){
        int alphabet = 65;
        //ASCII value of capital A is 65
        for (int i = 0;i <= 8;i++){
            for (int j = 0;j <= i;j++){
                System.out.print((char) (alphabet + j) + " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
2、重复字母模式
public class RepeatingPattern{
    public static void main(String[] args){
        int letter = 65;
        for (int i = 0;i<= 9;i++){
            for (int j = 0;j <= i;j++){
                //prints the character
                System.out.print((char) letter + " ");
            }
            letter++;
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
3、K形字母图案
public class KshapePattern{
    public static void main(String[] args){
        for (int i = 8;i >= 0;i--){
            int alphabet = 65;
            for (int j = 0;j <= i;j++){
                System.out.print((char) (alphabet + j) + " ");
            }
            System.out.println();
        }
        for (int i = 0;i<= 8;i++){
            int alphabet = 65;
            for (int j = 0;j <= i;j++){
                System.out.print((char) (alphabet + j) + " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
4、三角形字符图案
public class TriangleCharacterPattern{
    public static void main(String[] args){
        for (int i = 0;i <= 8;i++) {
            int alphabet = 65;
            for (int j = 8;j >i;j--){
                System.out.print(" ");
            }
            for (int k = 0;
            k <= i;k++){
                System.out.print((char) (alphabet + k) + " ");
            }
            System.out.println();
        }
    }
}
输出:
如何Java中的打印模式
5、菱形字符图案
import java.util.Scanner;
public class DiamondCharacterPattern{
    public static void main(String[] args) {
        char[] alphabet = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
        int alphabet _number = 0;
        String[] diamond = new String[26];
        System.out.print("Enter a Character between A to Z : ");
        Scanner reader = new Scanner(System.in);
        try {
            char user_ alphabet = reader.next("[A-Z]").charAt(0);
            for (int i = 0;i <alphabet.length;i++) {
                if (letter[i] == user_ alphabet) {
                    alphabet _number = i;
                    break;
                }
            }
            for (int i = 0;i <= alphabet _number;i++) {
                diamond[i] = "";
                for (int j = 0;j <alphabet _number - i;j++) {
                    diamond[i] += " ";
                }
                    diamond[i] += alphabet
                if (alphabet[i] != 'A') {
                    for (int j = 0;j <2 * i - 1;j++) {
                        diamond[i] += " ";
                    }
                    diamond[i] += alphabet[i];
                }
                System.out.println(diamond[i]);
            }
            for (int i = alphabet _number - 1;i >= 0;i--){
                System.out.println(diamond[i]);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            reader.close();
        }
    }
}
输出:
如何Java打印模式
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4