java实现打印菱形

简介: java实现打印菱形
package cn.jbit.nestedloops;
import java.util.Scanner;
/**
 * 输入行数打印菱形
 */
public class Diamond {
  public static void main(String[] args) {
    int rows = 0; //菱形的行数
    Scanner input = new Scanner(System.in);
    System.out.print("请输入菱形行数:");
    rows = input.nextInt();
    while(rows%2 == 0){
      System.out.print("请输入奇数:");
      rows = input.nextInt();
    }
    int n = (rows+1)/2;
    //打印菱形的上半部分
    for(int i = 1; i <= n; i++){//外层循环变量i控制行数
      for(int j = 1; j <= n-i; j++){//内层循环变量j控制该行空格数
        System.out.print(" ");
      }
      for(int k = 1; k <= 2*i-1; k++){//内层循环变量k控制该行*号数
        System.out.print("*");
      }
      System.out.print("\n");
    }
    //打印菱形的下半部分
    for(int i = n-1; i >= 1; i--){
      for(int j = 1; j <= n-i; j++){
        System.out.print(" ");
      }
      for(int k = 1; k <= 2*i-1; k++){
        System.out.print("*");
      }
      System.out.print("\n");
    }
  }
}


相关文章
|
Java
用JAVA打印菱形(利用for循环)详细注释
用JAVA打印菱形(利用for循环)详细注释
4423 9
|
算法 Java
java打印菱形
package com.liu.text; public class TestString { public static void main(String[] args) { //k就是行数,一共K行 in...
981 0
|
17天前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
76 1
|
17天前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
66 2
|
1月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案
Java 数据库 Spring
95 0
|
1月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
134 16