程序员一代码搬运工
【Java学习心得和Java学习技术个人总结】

java打印菱形

实心菱形

%e5%ae%9e%e5%bf%83%e8%8f%b1%e5%bd%a2

 

空心菱形%e7%a9%ba%e5%bf%83%e8%8f%b1%e5%bd%a2

 

 

package demo;

import javax.swing.JOptionPane;

public class LingXing {

	public static void main(String[] args)  
    {      
          
//		Scanner sc = new Scanner(System.in);
//		int num =sc.nextInt();
        String str=JOptionPane.showInputDialog("请输入您要菱形的行数;");    
            
        int i = Integer.parseInt(str);    
        //staKongXin(i);
        sta(i);  
          
    }  
	
	
	/**
	 * 空心菱形
	 * @param num
	 */
	public  static void staKongXin(int  num){
		 for (int i=1;i<=num;i++)
		  {
		   for(int j=1;j<num-i+1;j++)
		   {
		    System.out.print(" ");
		   }
		   int count =2*i-1;
		   for(int k=0;k<count;k++)
		   {
		    if(0==k||count-1==k)
		     System.out.print("*");
		    else
		     System.out.print(" ");
		   }
		   System.out.println("");
		  }
		  for(int i=1;i<num;i++)
		  {
		   for(int j=1;j<=i;j++)
		   {
		    System.out.print(" ");
		   }
		   int count = 2*(num-i)-1;
		   for(int k=0;k<count;k++)
		   {
		    if(k==0||k==count-1)
		     System.out.print("*");
		    else
		     System.out.print(" ");
		   }System.out.println("");
		  }
	}
	 
   
    /**
     * 实心菱形
     * @param n
     */
    public static void sta(int n)  
    {  
    	 for(int i = 0; i < n - 1; i++) 
         { 
             for(int x = i + 1; x < n; x++) 
             { 
                 System.out.print(" "); 
             } 
             for(int y = 0; y < (i + 1) * 2 - 1; y++) 
             { 
                 System.out.print("*"); 
             } 
             System.out.println(); 
         } 
         for(int i = 0; i < n; i++) 
         { 
             for(int x = 0; x < i; x++) 
             { 
                 System.out.print(" "); 
             } 
             for(int y = i; y < 2 * n - i - 1; y++) 
             { 
                 System.out.print("*"); 
             } 
             System.out.println(); 
         } 
  
  
    }  
}